A few more kb_base fixups

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/options.c b/options.c
index bd7a85e..6941af0 100644
--- a/options.c
+++ b/options.c
@@ -15,8 +15,6 @@
 #include "parse.h"
 #include "lib/fls.h"
 
-unsigned int fio_kb_base = 1024;
-
 #define td_var_offset(var)	((size_t) &((struct thread_options *)0)->var)
 
 /*
@@ -84,7 +82,7 @@
 		} else
 			perc = -1;
 
-		if (str_to_decimal(fname, &val, 1)) {
+		if (str_to_decimal(fname, &val, 1, &td)) {
 			log_err("fio: bssplit conversion failed\n");
 			free(td->o.bssplit);
 			return 1;
@@ -639,7 +637,6 @@
 		return 1;
 	}
 
-	fio_kb_base = td->o.kb_base;
 	return 0;
 }
 
@@ -1719,3 +1716,16 @@
 	__options_mem(td, 0);
 #endif
 }
+
+unsigned int fio_get_kb_base(void *data)
+{
+	struct thread_data *td = data;
+	unsigned int kb_base = 0;
+
+	if (td)
+		kb_base = td->o.kb_base;
+	if (!kb_base)
+		kb_base = 1024;
+
+	return kb_base;
+}