[PATCH] fio: change rw= parameter to take string instead of hard ints
authorJens Axboe <axboe@suse.de>
Thu, 1 Dec 2005 11:13:32 +0000 (12:13 +0100)
committerJens Axboe <axboe@suse.de>
Thu, 1 Dec 2005 11:13:32 +0000 (12:13 +0100)
README.fio
fio-ini.c

index b87f6161f01bf93dc27c80d009d27f50f0f7ac96..b7e2ca90a69d99c17ff7c28ba9d07a899710cf85 100644 (file)
@@ -23,7 +23,7 @@ $ fio
 The <jobs> format is as follows:
 
        directory=x     Use 'x' as the top level directory for storing files
-       rw=0/1          0 is read, 1 is write
+       rw=x            'x' may be: read, randread, write, or randwrite
        overwrite=x     If 'x', layout a write file first.
        prio=x          Run io at prio X, 0-7 is the kernel allowed range
        prioclass=x     Run io at prio class X
@@ -32,8 +32,6 @@ The <jobs> format is as follows:
        bsrange=x-y     Mix thread block sizes randomly between x and y
        direct=x        1 for direct IO, 0 for buffered IO
        thinktime=x     "Think" x usec after each io
-       random          IO is randomized
-       sequential      IO is sequential
        rate=x          Throttle rate to x KiB/sec
        ratemin=x       Quit if rate of x KiB/sec can't be met
        ratecycle=x     ratemin averaged over x msecs
index c1d01f9d30c7b4757559e5f7e990647388cb3927..9817b2132ac419705336c1ea6e44389ba5d5c344 100644 (file)
--- a/fio-ini.c
+++ b/fio-ini.c
@@ -479,10 +479,6 @@ int parse_jobs_ini(char *file)
                                continue;
                        if (strstr(p, "["))
                                break;
-                       if (!check_int(p, "rw", &td->ddir)) {
-                               fgetpos(f, &off);
-                               continue;
-                       }
                        if (!check_int(p, "prio", &prio)) {
                                fgetpos(f, &off);
                                continue;
@@ -625,16 +621,30 @@ int parse_jobs_ini(char *file)
                                fgetpos(f, &off);
                                continue;
                        }
-                       if (!check_strset(p, "sequential")) {
+                       if (!check_str(p, "rw", "randread")) {
+                               td->ddir = DDIR_READ;
+                               td->sequential = 0;
+                               fgetpos(f, &off);
+                               continue;
+                       }
+                       if (!check_str(p, "rw", "read")) {
+                               td->ddir = DDIR_READ;
                                td->sequential = 1;
                                fgetpos(f, &off);
                                continue;
                        }
-                       if (!check_strset(p, "random")) {
+                       if (!check_str(p, "rw", "randwrite")) {
+                               td->ddir = DDIR_WRITE;
                                td->sequential = 0;
                                fgetpos(f, &off);
                                continue;
                        }
+                       if (!check_str(p, "rw", "write")) {
+                               td->ddir = DDIR_WRITE;
+                               td->sequential = 1;
+                               fgetpos(f, &off);
+                               continue;
+                       }
                        if (!check_strset(p, "aio")) {
                                td->use_aio = 1;
                                fgetpos(f, &off);