On 26.03.2025 12:26, zoudongjie via wrote:
From: Zhu Yangyang <[email protected]>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/[email protected]/ 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
