summaryrefslogtreecommitdiff
path: root/zbd.c
diff options
context:
space:
mode:
authorAravind Ramesh <aravind.ramesh@wdc.com>2021-01-27 13:19:21 +0900
committerJens Axboe <axboe@kernel.dk>2021-01-29 08:14:00 -0700
commitb423c4b0ebd539338bdce1babc0cf4c3f3e5d513 (patch)
treeb6ec95af8a15dd876e8af1a492f6ae356347fdee /zbd.c
parentf952800a0b1a6b1d2e36ac90c631382f8c285161 (diff)
downloadfio-b423c4b0ebd539338bdce1babc0cf4c3f3e5d513.tar.gz
fio-b423c4b0ebd539338bdce1babc0cf4c3f3e5d513.tar.bz2
zbd: initialize sectors with data at start time
Based on the flag enable_check_swd, which is false by default, fio does not initialize the swd value at startup, initializing the swd value to be zero, even if some zones have sectors with data. This can result in fio reflecting less than actual swd after a few writes are completed. In workloads where verify is enabled, fio resets all the zones and while resetting, it decrements the swd counter with the actual number of swds in that zone(swd-count - swd-in-zone), since swd-count is initialized to 0, it results in overflow of the variable causing unpredictable issues. So, initialize the swd to the correct value. Fixes: 409a4f291e7f ("zbd: avoid initializing swd when unnecessary") Signed-off-by: Aravind Ramesh <aravind.ramesh@wdc.com> Signed-off-by: Dmitry Fomichev <dmitry.fomichev@wdc.com> Reviewed-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'zbd.c')
-rw-r--r--zbd.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/zbd.c b/zbd.c
index cf2abc3e..84165ddc 100644
--- a/zbd.c
+++ b/zbd.c
@@ -946,9 +946,6 @@ static void zbd_init_swd(struct fio_file *f)
{
uint64_t swd;
- if (!enable_check_swd)
- return;
-
swd = zbd_process_swd(f, SET_SWD);
dprint(FD_ZBD, "%s(%s): swd = %" PRIu64 "\n", __func__, f->file_name,
swd);