log_err("fio: rate and rate_iops are mutually exclusive\n");
ret = 1;
}
- if ((o->rate[DDIR_READ] < o->ratemin[DDIR_READ]) ||
- (o->rate[DDIR_WRITE] < o->ratemin[DDIR_WRITE]) ||
- (o->rate[DDIR_TRIM] < o->ratemin[DDIR_TRIM]) ||
- (o->rate_iops[DDIR_READ] < o->rate_iops_min[DDIR_READ]) ||
- (o->rate_iops[DDIR_WRITE] < o->rate_iops_min[DDIR_WRITE]) ||
- (o->rate_iops[DDIR_TRIM] < o->rate_iops_min[DDIR_TRIM])) {
+ if ((o->rate[DDIR_READ] && (o->rate[DDIR_READ] < o->ratemin[DDIR_READ])) ||
+ (o->rate[DDIR_WRITE] && (o->rate[DDIR_WRITE] < o->ratemin[DDIR_WRITE])) ||
+ (o->rate[DDIR_TRIM] && (o->rate[DDIR_TRIM] < o->ratemin[DDIR_TRIM])) ||
+ (o->rate_iops[DDIR_READ] && (o->rate_iops[DDIR_READ] < o->rate_iops_min[DDIR_READ])) ||
+ (o->rate_iops[DDIR_WRITE] && (o->rate_iops[DDIR_WRITE] < o->rate_iops_min[DDIR_WRITE])) ||
+ (o->rate_iops[DDIR_TRIM] && (o->rate_iops[DDIR_TRIM] < o->rate_iops_min[DDIR_TRIM]))) {
log_err("fio: minimum rate exceeds rate\n");
ret = 1;
}