X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=filesetup.c;h=8e5059412ed5e82c396d0f87a87523a2e61f1c4c;hp=1836d7e2a10540014947a6a8df5b935306af1ee4;hb=a7e8aae0220458e3d3bfa12c04835a63bbf152e2;hpb=a25ba6c64fe1313716f5a593ae6bd67492b2314a diff --git a/filesetup.c b/filesetup.c index 1836d7e2..8e505941 100644 --- a/filesetup.c +++ b/filesetup.c @@ -737,14 +737,11 @@ int generic_open_file(struct thread_data *td, struct fio_file *f) f_out = stderr; } - if (td_trim(td)) - goto skip_flags; if (td->o.odirect) flags |= OS_O_DIRECT; flags |= td->o.sync_io; if (td->o.create_on_open && td->o.allow_create) flags |= O_CREAT; -skip_flags: if (f->filetype != FIO_TYPE_FILE) flags |= FIO_O_NOATIME; @@ -1410,6 +1407,12 @@ done: td_restore_runstate(td, old_state); + if (td->o.fdp) { + err = fdp_init(td); + if (err) + goto err_out; + } + return 0; err_offset: @@ -1587,6 +1590,8 @@ void fio_file_free(struct fio_file *f) { if (fio_file_axmap(f)) axmap_free(f->io_axmap); + if (f->ruhs_info) + sfree(f->ruhs_info); if (!fio_file_smalloc(f)) { free(f->file_name); free(f); @@ -1620,6 +1625,7 @@ void close_and_free_files(struct thread_data *td) } zbd_close_file(f); + fdp_free_ruhs_info(f); fio_file_free(f); }