[PATCH] bs= and bsrange= takes both read and write sizes

Get rid of read_bs/write_bs and read_bsrange/write_bsrange. It was ugly
and too complicated. Instead support giving both values in a single bs=
or bsrange= seperated by a comma.

Example: bs=1k,4k will use 1k blocks for reads, 4k blocks for writes.
	 bs=32k will use 32k blocks for both reads and writes.

Similar for bsrange=

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/init.c b/init.c
index 3c27ea5..a8ff5ac 100644
--- a/init.c
+++ b/init.c
@@ -142,16 +142,7 @@
 		.name	= "bs",
 		.type	= FIO_OPT_STR_VAL_INT,
 		.off1	= td_var_offset(bs[DDIR_READ]),
-	},
-	{
-		.name	= "read_bs",
-		.type	= FIO_OPT_STR_VAL_INT,
-		.off1	= td_var_offset(bs[DDIR_READ]),
-	},
-	{
-		.name	= "write_bs",
-		.type	= FIO_OPT_STR_VAL_INT,
-		.off1	= td_var_offset(bs[DDIR_WRITE]),
+		.off2	= td_var_offset(bs[DDIR_WRITE]),
 	},
 	{
 		.name	= "offset",
@@ -178,18 +169,8 @@
 		.type	= FIO_OPT_RANGE,
 		.off1	= td_var_offset(min_bs[DDIR_READ]),
 		.off2	= td_var_offset(max_bs[DDIR_READ]),
-	},
-	{
-		.name	= "read_bsrange",
-		.type	= FIO_OPT_RANGE,
-		.off1	= td_var_offset(min_bs[DDIR_READ]),
-		.off2	= td_var_offset(max_bs[DDIR_READ]),
-	},
-	{
-		.name	= "write_bsrange",
-		.type	= FIO_OPT_RANGE,
-		.off1	= td_var_offset(min_bs[DDIR_WRITE]),
-		.off2	= td_var_offset(max_bs[DDIR_WRITE]),
+		.off3	= td_var_offset(min_bs[DDIR_WRITE]),
+		.off4	= td_var_offset(max_bs[DDIR_WRITE]),
 	},
 	{
 		.name	= "nrfiles",
@@ -508,8 +489,6 @@
 	if (td_read(td) || td_rw(td))
 		td->overwrite = 1;
 
-	if (td->bs[DDIR_READ] != DEF_BS)
-		td->bs[DDIR_WRITE] = td->bs[DDIR_READ];
 	if (!td->min_bs[DDIR_READ])
 		td->min_bs[DDIR_READ]= td->bs[DDIR_READ];
 	if (!td->max_bs[DDIR_READ])