The following changes since commit 95e564523d502e5a682ae7f6ee793ca4c9ca76ca:
rate: remove redundant code in rate_ddir() (2015-03-12 10:05:25 -0600)
are available in the git repository at:
git://git.kernel.dk/fio.git master
for you to fetch changes up to 7d1bb70f3d85d041b4b7dd926e98054fea980bdc:
Scramble IO buffers unless explicitly told not (2015-03-17 18:11:07 -0600)
----------------------------------------------------------------
Jens Axboe (3):
smalloc: don't crash on being passed a bad pointer
io_u: fix refill, should be random content
Scramble IO buffers unless explicitly told not
Zev Weiss (1):
init: fix exit status with bogus arguments
init.c | 3 +++
io_u.c | 7 +++++--
smalloc.c | 8 ++++++--
3 files changed, 14 insertions(+), 4 deletions(-)
---
Diff of recent changes:
diff --git a/init.c b/init.c
index 7aedf2b..95e26b8 100644
--- a/init.c
+++ b/init.c
@@ -2135,6 +2135,7 @@ int parse_cmd_line(int argc, char *argv[], int
client_type)
td = NULL;
}
do_exit++;
+ exit_val = 1;
break;
}
fio_options_set_ioengine_opts(l_opts, td);
@@ -2153,6 +2154,7 @@ int parse_cmd_line(int argc, char *argv[], int
client_type)
td = NULL;
}
do_exit++;
+ exit_val = 1;
}
if (!ret && !strcmp(opt, "ioengine")) {
@@ -2161,6 +2163,7 @@ int parse_cmd_line(int argc, char *argv[], int
client_type)
put_job(td);
td = NULL;
do_exit++;
+ exit_val = 1;
break;
}
fio_options_set_ioengine_opts(l_opts, td);
diff --git a/io_u.c b/io_u.c
index 6567e10..a45dd40 100644
--- a/io_u.c
+++ b/io_u.c
@@ -1484,7 +1484,8 @@ struct io_u *get_io_u(struct thread_data *td)
io_u_fill_buffer(td, io_u,
td->o.min_bs[DDIR_WRITE],
io_u->xfer_buflen);
- } else if ((td->flags & TD_F_SCRAMBLE_BUFFERS) &&
+ }
+ if ((td->flags & TD_F_SCRAMBLE_BUFFERS) &&
!(td->flags & TD_F_COMPRESS))
do_scramble = 1;
if (td->flags & TD_F_VER_NONE) {
@@ -1895,8 +1896,10 @@ void fill_io_buffer(struct thread_data *td, void *buf,
unsigned int min_write,
} while (left);
} else if (o->buffer_pattern_bytes)
fill_buffer_pattern(td, buf, max_bs);
- else
+ else if (o->zero_buffers)
memset(buf, 0, max_bs);
+ else
+ fill_random_buf(get_buf_state(td), buf, max_bs);
}
/*
diff --git a/smalloc.c b/smalloc.c
index b460d65..447d5c5 100644
--- a/smalloc.c
+++ b/smalloc.c
@@ -363,8 +363,12 @@ void sfree(void *ptr)
global_read_unlock();
- assert(pool);
- sfree_pool(pool, ptr);
+ if (pool) {
+ sfree_pool(pool, ptr);
+ return;
+ }
+
+ log_err("smalloc: ptr %p not from smalloc pool\n", ptr);
}
static void *__smalloc_pool(struct pool *pool, size_t size)
--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html