zbd: fix check against 32-bit zone size
authorAlexey Dobriyan <adobriyan@gmail.com>
Mon, 22 Feb 2021 13:24:01 +0000 (16:24 +0300)
committerJens Axboe <axboe@kernel.dk>
Mon, 22 Feb 2021 14:35:36 +0000 (07:35 -0700)
Zone size can be bigger than 4GB.

Signed-off-by: Alexey Dobriyan (SK hynix) <adobriyan@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
zbd.c

diff --git a/zbd.c b/zbd.c
index a93a977eb05da78fabf5624e40ce47f137aeb0f8..20e610c40ef5272d894afa581e9f97eb6f9db59c 100644 (file)
--- a/zbd.c
+++ b/zbd.c
@@ -333,20 +333,21 @@ static bool zbd_verify_bs(void)
 {
        struct thread_data *td;
        struct fio_file *f;
-       uint32_t zone_size;
        int i, j, k;
 
        for_each_td(td, i) {
                for_each_file(td, f, j) {
+                       uint64_t zone_size;
+
                        if (!f->zbd_info)
                                continue;
                        zone_size = f->zbd_info->zone_size;
                        for (k = 0; k < FIO_ARRAY_SIZE(td->o.bs); k++) {
                                if (td->o.verify != VERIFY_NONE &&
                                    zone_size % td->o.bs[k] != 0) {
-                                       log_info("%s: block size %llu is not a divisor of the zone size %d\n",
+                                       log_info("%s: block size %llu is not a divisor of the zone size %llu\n",
                                                 f->file_name, td->o.bs[k],
-                                                zone_size);
+                                                (unsigned long long)zone_size);
                                        return false;
                                }
                        }