projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Zipf theta must be different than 1.0
[fio.git]
/
iolog.c
diff --git
a/iolog.c
b/iolog.c
index f962864d912d9b5cdc3bfbc39286241fdd717665..12f09d0ec019b075625fd6a4f016337657c9e151 100644
(file)
--- a/
iolog.c
+++ b/
iolog.c
@@
-239,7
+239,9
@@
restart:
else if (ipo->offset > __ipo->offset)
p = &(*p)->rb_right;
else {
else if (ipo->offset > __ipo->offset)
p = &(*p)->rb_right;
else {
- assert(ipo->len == __ipo->len);
+ dprint(FD_IO, "iolog: overlap %llu/%lu, %llu/%lu",
+ __ipo->offset, __ipo->len,
+ ipo->offset, ipo->len);
td->io_hist_len--;
rb_erase(parent, &td->io_hist_tree);
remove_trim_entry(td, __ipo);
td->io_hist_len--;
rb_erase(parent, &td->io_hist_tree);
remove_trim_entry(td, __ipo);
@@
-492,13
+494,15
@@
int init_iolog(struct thread_data *td)
return ret;
}
return ret;
}
-void setup_log(struct io_log **log)
+void setup_log(struct io_log **log
, unsigned long avg_msec
)
{
struct io_log *l = malloc(sizeof(*l));
{
struct io_log *l = malloc(sizeof(*l));
+ memset(l, 0, sizeof(*l));
l->nr_samples = 0;
l->max_samples = 1024;
l->log = malloc(l->max_samples * sizeof(struct io_sample));
l->nr_samples = 0;
l->max_samples = 1024;
l->log = malloc(l->max_samples * sizeof(struct io_sample));
+ l->avg_msec = avg_msec;
*log = l;
}
*log = l;
}