mbox series

[v2,0/5] Enable vdpa net migration with features depending on CVQ

Message ID 20230810153611.3410882-1-eperezma@redhat.com (mailing list archive)
Headers show
Series Enable vdpa net migration with features depending on CVQ | expand

Message

Eugenio Perez Martin Aug. 10, 2023, 3:36 p.m. UTC
At this moment the migration of net features that depends on CVQ is not
possible, as there is no reliable way to restore the device state like mac
address, number of enabled queues, etc to the destination.  This is mainly
caused because the device must only read CVQ, and process all the commands
before resuming the dataplane.

This series lift that requirement, sending the VHOST_VDPA_SET_VRING_ENABLE
ioctl for dataplane vqs only after the device has processed all commands.
---
From v1:
* Factor out VRING_ENABLE ioctls from vhost_vdpa_dev_start to the caller,
  instead of providing a callback to know if it must be called or not.
* at https://lists.nongnu.org/archive/html/qemu-devel/2023-07/msg05447.html

From FRC:
* Enable vqs early in case CVQ cannot be shadowed.
* at https://lists.gnu.org/archive/html/qemu-devel/2023-07/msg01325.html

Eugenio PĂ©rez (5):
  vdpa: use first queue SVQ state for CVQ default
  vdpa: export vhost_vdpa_set_vring_ready
  vdpa: rename vhost_vdpa_net_load to vhost_vdpa_net_cvq_load
  vdpa: move vhost_vdpa_set_vrings_ready to the caller
  vdpa: remove net cvq migration blocker

 include/hw/virtio/vhost-vdpa.h |  1 +
 hw/virtio/vdpa-dev.c           |  3 ++
 hw/virtio/vhost-vdpa.c         | 22 +++++-----
 net/vhost-vdpa.c               | 75 +++++++++++++++++++---------------
 hw/virtio/trace-events         |  2 +-
 5 files changed, 57 insertions(+), 46 deletions(-)