qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] block/file-posix: fix update_zones_wp() caller
@ 2023-08-24 17:39 Sam Li
  2023-08-24 23:49 ` Damien Le Moal
  0 siblings, 1 reply; 5+ messages in thread
From: Sam Li @ 2023-08-24 17:39 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, dlemoal, qemu-block, stefanha, hare, dmitry.fomichev,
	Hanna Reitz, Sam Li

When the zoned requests that may change wp fail, it needs to
update only wps of the zones within the range of the requests
for not disrupting the other in-flight requests. The wp is updated
successfully after the request completes.

Fixed the callers with right offset and nr_zones.

Signed-off-by: Sam Li <faithilikerun@gmail.com>
---
 block/file-posix.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/block/file-posix.c b/block/file-posix.c
index b16e9c21a1..22559d6c2d 100644
--- a/block/file-posix.c
+++ b/block/file-posix.c
@@ -2522,7 +2522,8 @@ out:
         }
     } else {
         if (type & (QEMU_AIO_WRITE | QEMU_AIO_ZONE_APPEND)) {
-            update_zones_wp(bs, s->fd, 0, 1);
+            update_zones_wp(bs, s->fd, offset,
+                            ROUND_UP(bytes, bs->bl.zone_size));
         }
     }
 
@@ -3472,7 +3473,7 @@ static int coroutine_fn raw_co_zone_mgmt(BlockDriverState *bs, BlockZoneOp op,
                         len >> BDRV_SECTOR_BITS);
     ret = raw_thread_pool_submit(handle_aiocb_zone_mgmt, &acb);
     if (ret != 0) {
-        update_zones_wp(bs, s->fd, offset, i);
+        update_zones_wp(bs, s->fd, offset, nrz);
         error_report("ioctl %s failed %d", op_name, ret);
         return ret;
     }
-- 
2.40.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-08-25  3:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-24 17:39 [PATCH] block/file-posix: fix update_zones_wp() caller Sam Li
2023-08-24 23:49 ` Damien Le Moal
2023-08-25  3:05   ` Sam Li
2023-08-25  3:32     ` Damien Le Moal
2023-08-25  3:36       ` Sam Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).