projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add version 2 of the iolog format
[fio.git]
/
init.c
diff --git
a/init.c
b/init.c
index 09bbce4c597ea6ca5aae939fe05482c069636cbd..8be2a10a5a1cd779952bc655633b90698592c5cc 100644
(file)
--- a/
init.c
+++ b/
init.c
@@
-17,7
+17,7
@@
#include "fio.h"
#include "parse.h"
#include "fio.h"
#include "parse.h"
-static char fio_version_string[] = "fio 1.1
5.2
";
+static char fio_version_string[] = "fio 1.1
6.9
";
#define FIO_RANDSEED (0xb1899bedUL)
#define FIO_RANDSEED (0xb1899bedUL)
@@
-274,6
+274,11
@@
static int fixup_options(struct thread_data *td)
return 1;
}
return 1;
}
+ if (!o->timeout && o->time_based) {
+ log_err("fio: time_based requires a runtime/timeout setting\n");
+ o->time_based = 0;
+ }
+
return 0;
}
return 0;
}
@@
-550,6
+555,7
@@
static int parse_jobs_ini(char *file, int stonewall_flag)
FILE *f;
char *p;
int ret = 0, stonewall;
FILE *f;
char *p;
int ret = 0, stonewall;
+ int first_sect = 1;
f = fopen(file, "r");
if (!f) {
f = fopen(file, "r");
if (!f) {
@@
-558,8
+564,12
@@
static int parse_jobs_ini(char *file, int stonewall_flag)
}
string = malloc(4096);
}
string = malloc(4096);
- name = malloc(256);
- memset(name, 0, 256);
+
+ /*
+ * it's really 256 + small bit, 280 should suffice
+ */
+ name = malloc(280);
+ memset(name, 0, 280);
stonewall = stonewall_flag;
do {
stonewall = stonewall_flag;
do {
@@
-573,8
+583,8
@@
static int parse_jobs_ini(char *file, int stonewall_flag)
if (is_empty_or_comment(p))
continue;
if (sscanf(p, "[%255s]", name) != 1) {
if (is_empty_or_comment(p))
continue;
if (sscanf(p, "[%255s]", name) != 1) {
- log_err("fio: option <%s> outside of job section\n", p);
-
continue
;
+ log_err("fio: option <%s> outside of
[]
job section\n", p);
+
break
;
}
global = !strncmp(name, "global", 6);
}
global = !strncmp(name, "global", 6);
@@
-582,9
+592,11
@@
static int parse_jobs_ini(char *file, int stonewall_flag)
name[strlen(name) - 1] = '\0';
if (dump_cmdline) {
name[strlen(name) - 1] = '\0';
if (dump_cmdline) {
- log_info("fio ");
+ if (first_sect)
+ log_info("fio ");
if (!global)
log_info("--name=%s ", name);
if (!global)
log_info("--name=%s ", name);
+ first_sect = 0;
}
td = get_new_job(global, &def_thread);
}
td = get_new_job(global, &def_thread);
@@
-647,10
+659,7
@@
static int fill_def_thread(void)
{
memset(&def_thread, 0, sizeof(def_thread));
{
memset(&def_thread, 0, sizeof(def_thread));
- if (fio_getaffinity(getpid(), &def_thread.o.cpumask) == -1) {
- perror("sched_getaffinity");
- return 1;
- }
+ fio_getaffinity(getpid(), &def_thread.o.cpumask);
/*
* fill default options
/*
* fill default options
@@
-661,10
+670,6
@@
static int fill_def_thread(void)
def_thread.o.write_bw_log = write_bw_log;
def_thread.o.write_lat_log = write_lat_log;
def_thread.o.write_bw_log = write_bw_log;
def_thread.o.write_lat_log = write_lat_log;
-#ifdef FIO_HAVE_DISK_UTIL
- def_thread.o.do_disk_util = 1;
-#endif
-
return 0;
}
return 0;
}
@@
-782,7
+787,11
@@
static int parse_cmd_line(int argc, char *argv[])
td = NULL;
}
if (!td) {
td = NULL;
}
if (!td) {
- int global = !strncmp(val, "global", 6);
+ int global = 0;
+
+ if (strncmp(opt, "name", 4) ||
+ !strncmp(val, "global", 6))
+ global = 1;
td = get_new_job(global, &def_thread);
if (!td)
td = get_new_job(global, &def_thread);
if (!td)