The Linux patch [1] added support for suspending virtio devices using native PCI power management. However, Linux does PCI power management during the noirq phase of suspend and resume. Without a mechanism to suspend/resume virtio devices when the driver is suspended/resumed in the early phase of suspend/late phase of resume, there is a window where interrupts can be lost.
This revision of the patch tries to reconcile with the similar proposal [2], which was pulled out of one of a patch series attempting to add live migration support to virtio [3]. [1] https://lore.kernel.org/lkml/20231208070754.3132339-1-steve...@chromium.org/ [2] https://lore.kernel.org/all/20240218132306.83456-1-lingshan....@intel.com/ [3] https://lore.kernel.org/all/20231103103437.72784-1-lingshan....@intel.com/ v4 -> v5: - Use a device status bit instead of a pci capability. - Reconcile differences with [2] by specifying that devices should finish processing buffers before suspending and that devices shouldn't access virtqueues while suspended. - Add more details about state transition acknowledgment. v3 -> v4: - Define virtio-pci specific power management that can be used in conjunction with PCI power management. v2 -> v3: - Use different words for some concepts to avoid conflicts with other parts of the spec. - Rewrite various sentences to improve clarity. v1 -> v2: - Define virtio-pci support on top of PCI power management. - Add more conformance requirements. David Stevens (1): Add SUSPEND bit to device status content.tex | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 84 insertions(+), 5 deletions(-) -- 2.44.0.rc0.258.g7320e95886-goog --------------------------------------------------------------------- To unsubscribe, e-mail: virtio-dev-unsubscr...@lists.oasis-open.org For additional commands, e-mail: virtio-dev-h...@lists.oasis-open.org