else
bytes = this_bytes[DDIR_TRIM];
- if (td->o.io_limit)
- limit = td->o.io_limit;
+ if (td->o.io_size)
+ limit = td->o.io_size;
else
limit = td->o.size;
total_bytes = td->o.size;
/*
- * Allow random overwrite workloads to write up to io_limit
+ * Allow random overwrite workloads to write up to io_size
* before starting verification phase as 'size' doesn't apply.
*/
if (td_write(td) && td_random(td) && td->o.norandommap)
- total_bytes = max(total_bytes, (uint64_t) td->o.io_limit);
+ total_bytes = max(total_bytes, (uint64_t) td->o.io_size);
/*
* If verify_backlog is enabled, we'll run the verify in this
* handler as well. For that case, we may need up to twice the
return 0;
}
+/*
+ * This function is Linux specific.
+ * FIO_HAVE_IOSCHED_SWITCH enabled currently means it's Linux.
+ */
static int switch_ioscheduler(struct thread_data *td)
{
#ifdef FIO_HAVE_IOSCHED_SWITCH
if (td_ioengine_flagged(td, FIO_DISKLESSIO))
return 0;
- sprintf(tmp, "%s/queue/scheduler", td->sysfs_root);
+ assert(td->files && td->files[0]);
+ sprintf(tmp, "%s/queue/scheduler", td->files[0]->du->sysfs_root);
f = fopen(tmp, "r+");
if (!f) {
if (exceeds_number_ios(td))
return false;
- if (td->o.io_limit)
- limit = td->o.io_limit;
+ if (td->o.io_size)
+ limit = td->o.io_size;
else
limit = td->o.size;
if (diff < td_max_bs(td))
return false;
- if (fio_files_done(td) && !td->o.io_limit)
+ if (fio_files_done(td) && !td->o.io_size)
return false;
return true;