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

Reply via email to