On 26.03.2025 12:26, zoudongjie via wrote:
From: Zhu Yangyang <zhuyangyan...@huawei.com>

Calling qmp_block_set_io_throttle() will be blocked for a long time
when a network disk is configured and the network failure is just about
to occur.

This series add a timeout parameter for qmp_block_set_io_throttle to control
its execution duration.

Changelog
v3 ---
   Unify AIO_WAIT_WHILE_{TIMEOUT/INTERNAL} by replacing 
AIO_WAIT_WHILE_INTERNAL() with
   AIO_WAIT_WHILE_TIMEOUT(..., 0).

v2 ----
   1. Support 0 in BDRV_POLL_WHILE_TIMEOUT(), 0 means infinite.
   2. Use uint64_t timeout_ns instead of int64 timeout to name variables.
   3. Use timer_pending() to check for expiry instead of explicitly checking
      against the deadline for BDRV_POLL_WHILE_TIMEOUT().
   4. Add documentation for bdrv_drained_begin_timeout(), note that 
bdrv_drained_end()
      must be called when -ETIMEDOUT is returned.
   5. Add a timeout parameter to the qmp_block_set_io_throttle() instead of 
hardcoding
      the timeout, and the default value is 0, mean an infinite timeout.

v1 patch link:
https://lore.kernel.org/qemu-devel/20250308101618.721954-1-zoudong...@huawei.com/

Zhu Yangyang (2):
   io/block: Refactoring the bdrv_drained_begin() function and implement
     a timeout mechanism.
   qapi/throttle: add timeout parameter for qmp_block_set_io_throttle()

Hi!

Is this series still relevant?  It's Cc'ed qemu-stable@, but not yet
applied to master branch..

Thanks,

/mjt

Reply via email to