Re: [PATCH v2 1/1] transport-mmio: Add v3, which polls for reset completion

Peter Hilber <[email protected]> Fri, 8 May 2026 16:53:45 +0200
Newsgroups dev.linux.lists.virtio-comment
Message-ID <5jkvhc7joy5toliab4qqmv7qno6j7irc2if5p72qbjboepo5xu@wu64nvccxa7s>
On Thu, Apr 16, 2026 at 06:52:56PM +0200, Peter Hilber wrote:
> Let devices using the MMIO transport avoid stalling the driver (virtual)
> CPU during device reset, which requires introducing a new MMIO transport
> version.
> 
> Unlike the PCI transport, the MMIO transport does not require the driver
> to poll for reset completion. This requires a device using the MMIO
> transport to complete reset during the write of zero to the Status
> register. Device reset may take more than 100 ms if it involves
> terminating ongoing device activity which accesses driver memory. When
> the (virtual) CPU writing zero to the Status register needs to be
> stalled during this, this may violate real-time requirements (including
> those for hypervisor trap-and-emulate).
> 
> Address this by introducing a new MMIO transport version, v3, where the
> driver must poll for reset completion, and, hence, the device reset does
> not have to complete during the write to the Status register. Add a
> requirement that resetting a device which already has Status zero is
> synchronous to avoid ambiguity when such a reset would finish.
> 

Could you please open a voting ballot for this change?

Fixes: https://github.com/oasis-tcs/virtio-spec/issues/246

This version got a Reviewed-by from Matias Ezequiel Vara Larsen [1].

Best regards,

Peter

[1] https://lore.kernel.org/virtio-comment/aeX0hPTBQh%2FtgLOp@fedora/#t