X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=iolog.c;h=fa40c8572664a4e14d1e53d39eae3547dc43b672;hb=7914c6147adaf3ef32804519ced850168fff1711;hp=d5a18582c0301f8685566c72cc6603c316e90160;hpb=d19c04d12b6996c4b9f6f4e27dd5a7570eea1ddc;p=fio.git diff --git a/iolog.c b/iolog.c index d5a18582..fa40c857 100644 --- a/iolog.c +++ b/iolog.c @@ -19,6 +19,7 @@ #include "smalloc.h" #include "blktrace.h" #include "pshared.h" +#include "lib/roundup.h" #include #include @@ -173,6 +174,7 @@ int read_iolog_get(struct thread_data *td, struct io_u *io_u) io_u->ddir = ipo->ddir; if (ipo->ddir != DDIR_WAIT) { io_u->offset = ipo->offset; + io_u->verify_offset = ipo->offset; io_u->buflen = ipo->len; io_u->file = td->files[ipo->fileno]; get_file(io_u->file); @@ -750,10 +752,13 @@ void setup_log(struct io_log **log, struct log_params *p, } if (l->td && l->td->o.io_submit_mode != IO_MODE_OFFLOAD) { + unsigned int def_samples = DEF_LOG_ENTRIES; struct io_logs *__p; __p = calloc(1, sizeof(*l->pending)); - __p->max_samples = DEF_LOG_ENTRIES; + if (l->td->o.iodepth > DEF_LOG_ENTRIES) + def_samples = roundup_pow2(l->td->o.iodepth); + __p->max_samples = def_samples; __p->log = calloc(__p->max_samples, log_entry_sz(l)); l->pending = __p; }