}
if (td->filetype == FIO_TYPE_FILE) {
+ char tmp[PATH_MAX];
+
if (td->directory && td->directory[0] != '\0')
- sprintf(td->file_name, "%s/%s.%d", td->directory, jobname, td->jobnum);
+ sprintf(tmp, "%s/%s.%d", td->directory, jobname, td->jobnum);
else
- sprintf(td->file_name, "%s.%d", jobname, td->jobnum);
+ sprintf(tmp, "%s.%d", jobname, td->jobnum);
+ td->file_name = strdup(tmp);
} else
- strncpy(td->file_name, jobname, sizeof(td->file_name) - 1);
+ td->file_name = strdup(jobname);
- sem_init(&td->mutex, 0, 0);
+ fio_sem_init(&td->mutex, 0);
td->clat_stat[0].min_val = td->clat_stat[1].min_val = ULONG_MAX;
td->slat_stat[0].min_val = td->slat_stat[1].min_val = ULONG_MAX;
continue;
#endif
}
- if (!check_int(p, "direct", &td->odirect)) {
+ if (!check_int(p, "direct", &il)) {
+ td->odirect = il;
fgetpos(f, &off);
continue;
}
fgetpos(f, &off);
continue;
}
- if (!check_int(p, "invalidate",&td->invalidate_cache)) {
+ if (!check_int(p, "invalidate", &il)) {
+ td->invalidate_cache = il;
fgetpos(f, &off);
continue;
}
fgetpos(f, &off);
continue;
}
- if (!check_int(p, "sync", &td->sync_io)) {
+ if (!check_int(p, "sync", &il)) {
+ td->sync_io = il;
fgetpos(f, &off);
continue;
}
fgetpos(f, &off);
continue;
}
- if (!check_int(p, "create_serialize", &td->create_serialize)) {
+ if (!check_int(p, "create_serialize", &il)) {
+ td->create_serialize = il;
fgetpos(f, &off);
continue;
}
- if (!check_int(p, "create_fsync", &td->create_fsync)) {
+ if (!check_int(p, "create_fsync", &il)) {
+ td->create_fsync = il;
fgetpos(f, &off);
continue;
}
- if (!check_int(p, "end_fsync", &td->end_fsync)) {
+ if (!check_int(p, "end_fsync", &il)) {
+ td->end_fsync = il;
fgetpos(f, &off);
continue;
}
fgetpos(f, &off);
continue;
}
- if (!check_int(p, "overwrite", &td->overwrite)) {
+ if (!check_int(p, "overwrite", &il)) {
+ td->overwrite = il;
fgetpos(f, &off);
continue;
}