Add support for inverse options

Options that are tied to each other, meaning that if one is
incremented by X, the other is decremented by X automatically.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
diff --git a/parse.c b/parse.c
index c1fed56..545c3de 100644
--- a/parse.c
+++ b/parse.c
@@ -833,9 +833,8 @@
 		return 1;
 	}
 
-	if (!handle_option(*o, post, data)) {
+	if (!handle_option(*o, post, data))
 		return 0;
-	}
 
 	log_err("fio: failed parsing %s\n", input);
 	return 1;
@@ -1063,8 +1062,11 @@
 
 	dprint(FD_PARSE, "init options\n");
 
-	for (o = &options[0]; o->name; o++)
+	for (o = &options[0]; o->name; o++) {
 		option_init(o);
+		if (o->inverse)
+			o->inv_opt = find_option(options, o->inverse);
+	}
 }
 
 void options_free(struct fio_option *options, void *data)