[Devel] [PATCH 1/1] ms/virtio_ring: fix infinite loop in virtnet_poll_cleantx when device is broken

Konstantin Khorenko khorenko at virtuozzo.com
Mon Aug 31 20:32:58 MSK 2026


On Mon, 31 Aug 2026 17:16:37 +0200, Denis V. Lunev <den at openvz.org> wrote:
> virtnet_poll_cleantx() contains a do-while loop that cleans up
> transmitted TX buffers and calls virtqueue_enable_cb_delayed() to check
> whether more buffers need processing. When the virtio backend stops
> responding during guest reboot, used->idx is never updated, so
> virtqueue_enable_cb_delayed() always returns false and the loop never
> terminates. Then it will block reboot process, and the guest will hang.
> 
> [...]

Reviewed-by: Konstantin Khorenko <khorenko at virtuozzo.com>

-- 
Konstantin Khorenko <khorenko at virtuozzo.com>


More information about the Devel mailing list