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 RFC lift that requirement, sending the VHOST_VDPA_SET_VRING_ENABLE ioctl
for dataplane vqs only after the device has processed all commands.  If this
method is valid or not, or if it must be signalled by the parent driver
somehow, is still under discussion.  In case it is valid, this code allows
testing the vDPA device for it.

Eugenio Pérez (6):
  vdpa: export vhost_vdpa_set_vring_ready
  vdpa: add should_enable op
  vdpa: use virtio_ops->should_enable at vhost_vdpa_set_vrings_ready
  vdpa: add stub vhost_vdpa_should_enable
  vdpa: delay enable of data vqs
  vdpa: remove net cvq migration blocker

 include/hw/virtio/vhost-vdpa.h |  9 +++++++
 hw/virtio/vhost-vdpa.c         | 33 +++++++++++++++++++------
 net/vhost-vdpa.c               | 45 +++++++++++++++++++++++++---------
 hw/virtio/trace-events         |  2 +-
 4 files changed, 68 insertions(+), 21 deletions(-)

-- 
2.39.3



Reply via email to