projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix dynamic engine build
[fio.git]
/
iolog.c
diff --git
a/iolog.c
b/iolog.c
index 4a79fc4667fc13eff4c62b9206a0dfefe0a5dfd4..fa40c8572664a4e14d1e53d39eae3547dc43b672 100644
(file)
--- a/
iolog.c
+++ b/
iolog.c
@@
-19,6
+19,7
@@
#include "smalloc.h"
#include "blktrace.h"
#include "pshared.h"
#include "smalloc.h"
#include "blktrace.h"
#include "pshared.h"
+#include "lib/roundup.h"
#include <netinet/in.h>
#include <netinet/tcp.h>
#include <netinet/in.h>
#include <netinet/tcp.h>
@@
-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->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);
io_u->buflen = ipo->len;
io_u->file = td->files[ipo->fileno];
get_file(io_u->file);
@@
-619,6
+621,8
@@
static bool init_iolog_read(struct thread_data *td)
fd = open_socket(fname);
if (fd >= 0)
f = fdopen(fd, "r");
fd = open_socket(fname);
if (fd >= 0)
f = fdopen(fd, "r");
+ } else if (!strcmp(fname, "-")) {
+ f = stdin;
} else
f = fopen(fname, "r");
} else
f = fopen(fname, "r");
@@
-748,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) {
}
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));
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;
}
__p->log = calloc(__p->max_samples, log_entry_sz(l));
l->pending = __p;
}