projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[PATCH] Offset verification header by a user-specified distance
[fio.git]
/
options.c
diff --git
a/options.c
b/options.c
index 829b808ce5be554f1f9092dbfdf9c7c022095dfb..130dc8c784b5f6f0ae67fd60550cd944073f91ea 100644
(file)
--- a/
options.c
+++ b/
options.c
@@
-203,6
+203,17
@@
static int str_opendir_cb(void *data, const char fio_unused *str)
return add_dir_files(td, td->o.opendir);
}
return add_dir_files(td, td->o.opendir);
}
+static int str_header_offset_cb(void *data, unsigned int *off)
+{
+ struct thread_data *td = data;
+ if (*off && *off < sizeof(struct verify_header)) {
+ log_err("fio: header_offset too small\n");
+ return 1;
+ }
+ td->o.header_offset = *off;
+ return 0;
+}
+
#define __stringify_1(x) #x
#define __stringify(x) __stringify_1(x)
#define __stringify_1(x) #x
#define __stringify(x) __stringify_1(x)
@@
-610,6
+621,13
@@
static struct fio_option options[] = {
.help = "Store buffer header every N bytes",
.def = "0",
},
.help = "Store buffer header every N bytes",
.def = "0",
},
+ {
+ .name = "header_offset",
+ .type = FIO_OPT_STR_VAL_INT,
+ .help = "Offset header location by N bytes",
+ .def = "0",
+ .cb = str_header_offset_cb,
+ },
{
.name = "write_iolog",
.type = FIO_OPT_STR_STORE,
{
.name = "write_iolog",
.type = FIO_OPT_STR_STORE,