zbd: remove unnecessary verify_backlog check in zbd_file_reset()
authorShin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Tue, 30 Apr 2024 10:30:20 +0000 (19:30 +0900)
committerVincent Fu <vincent.fu@samsung.com>
Tue, 30 Apr 2024 15:11:58 +0000 (11:11 -0400)
The commit c5c8b92be5a2 ("zbd: fix zone reset condition for verify")
improved zbd_file_reset() to not reset zones when data to verify is
left. To check the left verify data, it tried to do the same as
check_get_verify() including the check for the modulo operation
"td->io_hist_len % td->o.verify_backlog". This check is required in
check_get_verify() to know when to do the verify backlog operation.
However, this check is not required in zbd_file_reset() since zone reset
is not related to the verify backlog timing. The unnecessary check for
"td->io_hist_len % td->o.verify_backlog" allows to reset zones even when
td->io_hist_len is non-zero and the data to verify is left. It erases
the data to verify and causes verify errors. Fix this by removing the
unnecessary check.

Fixes: c5c8b92be5a2 ("zbd: fix zone reset condition for verify")
Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Link: https://lore.kernel.org/r/20240430103022.4136039-2-shinichiro.kawasaki@wdc.com
Signed-off-by: Vincent Fu <vincent.fu@samsung.com>
zbd.c

diff --git a/zbd.c b/zbd.c
index 3741766051547fbc71a46ab42efe72a181826993..8a092cbe61db346330ed3a6e618db4fb4efb0d4c 100644 (file)
--- a/zbd.c
+++ b/zbd.c
@@ -1361,9 +1361,6 @@ void zbd_file_reset(struct thread_data *td, struct fio_file *f)
        if (td->o.verify != VERIFY_NONE) {
                verify_data_left = td->runstate == TD_VERIFYING ||
                        td->io_hist_len || td->verify_batch;
-               if (td->io_hist_len && td->o.verify_backlog)
-                       verify_data_left =
-                               td->io_hist_len % td->o.verify_backlog;
                if (!verify_data_left)
                        zbd_reset_zones(td, f, zb, ze);
        }