- prefs->max_requests = prefs->to;
- } else {
-
- /*************************\
- * Check size parameters *
- \*************************/
-
- //Block size (bs): Defaults to 4K.
- //It must be a number followed by one of these characters:
- // [k|K|m|M|g|G]
- //If not, it will be considered as size in bytes.
- //Must be integer multiple of segment's page size (typically 4k).
- if (!block_size[0])
- strcpy(block_size,"4k");
-
- //0 iodepth is an accepted value, but only for debugging purposes
- if (!prefs->iodepth)
- prefs->iodepth = 1;
-
- prefs->bs = str2num(block_size);
- if (!prefs->bs) {
- XSEGLOG2(&lc, E, "Invalid syntax: -bs %s\n", block_size);
- goto arg_fail;
- } else if (prefs->bs % xseg_page_size) {
- XSEGLOG2(&lc, E, "Misaligned block size: %s\n", block_size);
- goto arg_fail;
- }
-
- //Total I/O size (ts): Must be supplied by user.
- //Must have the same format as "total size"
- //Must be integer multiple of "block size"
- if (!total_size[0]) {
- XSEGLOG2(&lc, E, "Total I/O size needs to be supplied\n");
+ prefs->status->max = prefs->to;
+ } else if (total_size[0]) {
+ if (prefs->op != X_READ && prefs->op != X_WRITE) {
+ XSEGLOG2(&lc, E,
+ "Total objects must be supplied (required by op %s)\n", op);