From: Jens Axboe Date: Sat, 20 Dec 2014 21:42:56 +0000 (-0700) Subject: Fix default scrambling of buffers X-Git-Tag: fio-2.2.2~1 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=b04f590551050b23768a3969d47371d363aa8745;p=fio.git Fix default scrambling of buffers Commit 1bf2498d3111 inadvertently made us not scramble by default. The logic was a bit convoluted, so clear it up and scramble if: - Asked so by adding scramble_buffers=1 - Or, if not asked to explicitly, but zero_buffers not set to 1. Reported-by: Chris Wilson Signed-off-by: Jens Axboe --- diff --git a/init.c b/init.c index 427768c3..d3dec0a1 100644 --- a/init.c +++ b/init.c @@ -933,12 +933,16 @@ static void init_flags(struct thread_data *td) if (o->refill_buffers) td->flags |= TD_F_REFILL_BUFFERS; /* - * Scramble by default, but not if zero_buffer is true and has been - * set. But if scramble_buffers has been set, always scramble. + * Always scramble buffers if asked to */ - if (o->scramble_buffers && ((!o->zero_buffers && - fio_option_is_set(o, zero_buffers)) || - fio_option_is_set(o, scramble_buffers))) + if (o->scramble_buffers && fio_option_is_set(o, scramble_buffers)) + td->flags |= TD_F_SCRAMBLE_BUFFERS; + /* + * But also scramble buffers, unless we were explicitly asked + * to zero them. + */ + if (o->scramble_buffers && !(o->zero_buffers && + fio_option_is_set(o, zero_buffers))) td->flags |= TD_F_SCRAMBLE_BUFFERS; if (o->verify != VERIFY_NONE) td->flags |= TD_F_VER_NONE;