For the other buffer settings (like patterns, or whether always
to refill or not), we don't do the slight header scramble if
they are enabled. Do they same for compression settings, otherwise
we can skew the compression results.
Signed-off-by: Jens Axboe <axboe@fb.com>
return 0;
}
+static int compression_enabled(struct thread_options *o)
+{
+ return o->compress_percentage || o->compress_chunk;
+}
+
static void init_flags(struct thread_data *td)
{
struct thread_options *o = &td->o;
td->flags |= TD_F_READ_IOLOG;
if (o->refill_buffers)
td->flags |= TD_F_REFILL_BUFFERS;
- if (o->scramble_buffers)
+
+ /*
+ * Don't scramble buffers if we set any of the compression
+ * settings
+ */
+ if (o->scramble_buffers && !compression_enabled(o))
td->flags |= TD_F_SCRAMBLE_BUFFERS;
+
if (o->verify != VERIFY_NONE)
td->flags |= TD_F_VER_NONE;
}