From: "Eugenio Pérez" <eperezma@redhat.com>
To: qemu-devel@nongnu.org
Cc: Harpreet Singh Anand <hanand@xilinx.com>,
Stefano Garzarella <sgarzare@redhat.com>,
Laurent Vivier <lvivier@redhat.com>, Eli Cohen <eli@mellanox.com>,
Parav Pandit <parav@mellanox.com>,
Markus Armbruster <armbru@redhat.com>,
Eric Blake <eblake@redhat.com>,
Zhu Lingshan <lingshan.zhu@intel.com>,
Paolo Bonzini <pbonzini@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>, Cindy Lu <lulu@redhat.com>,
Cornelia Huck <cohuck@redhat.com>,
Liuxiangdong <liuxiangdong5@huawei.com>,
Jason Wang <jasowang@redhat.com>,
Stefan Hajnoczi <stefanha@redhat.com>,
"Gonglei (Arei)" <arei.gonglei@huawei.com>,
Gautam Dawar <gdawar@xilinx.com>
Subject: [RFC PATCH 00/12] NIC vhost-vdpa state restore via Shadow CVQ
Date: Sat, 16 Jul 2022 13:33:55 +0200 [thread overview]
Message-ID: <20220716113407.2730331-1-eperezma@redhat.com> (raw)
CVQ of net vhost-vdpa devices can be intercepted since the work of [1]. The
virtio-net device model is updated. The migration was blocked because although
the state can be megrated between VMM it was not possible to restore on the
destination NIC.
This series add support for SVQ to inject external messages without the guest's
knowledge, so before the guest is resumed all the guest visible state is
restored. It is done using standard CVQ messages, so the vhost-vdpa device does
not need to learn how to restore it: As long as they have the feature, they
know how to handle it.
This series needs SVQ CVQ support [1] and fixes [2] to be applied.
Thanks!
[1] https://lists.nongnu.org/archive/html/qemu-devel/2022-07/msg02808.html
[2] https://lists.nongnu.org/archive/html/qemu-devel/2022-07/msg02726.html
Eugenio Pérez (12):
vhost: Get vring base from vq, not svq
vhost: Move SVQ queue rewind to the destination
vdpa: Small rename of error labels
vdpa: delay set_vring_ready after DRIVER_OK
vhost: stop transfer elem ownership in vhost_handle_guest_kick
vhost: Use opaque data in SVQDescState
vhost: Add VhostVDPAStartOp operation
vdpa: Add vhost_vdpa_start_control_svq
vdpa: Extract vhost_vdpa_net_svq_add from
vhost_vdpa_net_handle_ctrl_avail
vdpa: Make vhost_vdpa_net_cvq_map_elem accept any out sg
vdpa: Add virtio-net mac address via CVQ at start
vdpa: Delete CVQ migration blocker
hw/virtio/vhost-shadow-virtqueue.h | 7 +-
include/hw/virtio/vhost-vdpa.h | 6 +-
hw/virtio/vhost-shadow-virtqueue.c | 30 ++---
hw/virtio/vhost-vdpa.c | 70 ++++++-----
net/vhost-vdpa.c | 184 ++++++++++++++++++++---------
5 files changed, 193 insertions(+), 104 deletions(-)
--
2.31.1
next reply other threads:[~2022-07-16 11:38 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-16 11:33 Eugenio Pérez [this message]
2022-07-16 11:33 ` [RFC PATCH 01/12] vhost: Get vring base from vq, not svq Eugenio Pérez
2022-07-18 5:48 ` Jason Wang
2022-07-18 7:14 ` Eugenio Perez Martin
2022-07-16 11:33 ` [RFC PATCH 02/12] vhost: Move SVQ queue rewind to the destination Eugenio Pérez
2022-07-18 5:49 ` Jason Wang
2022-07-18 7:20 ` Eugenio Perez Martin
2022-07-16 11:33 ` [RFC PATCH 03/12] vdpa: Small rename of error labels Eugenio Pérez
2022-07-18 5:50 ` Jason Wang
2022-07-18 7:21 ` Eugenio Perez Martin
2022-07-16 11:33 ` [RFC PATCH 04/12] vdpa: delay set_vring_ready after DRIVER_OK Eugenio Pérez
2022-07-18 6:34 ` Jason Wang
2022-07-18 6:57 ` Eugenio Perez Martin
2022-07-16 11:34 ` [RFC PATCH 05/12] vhost: stop transfer elem ownership in vhost_handle_guest_kick Eugenio Pérez
2022-07-16 11:34 ` [RFC PATCH 06/12] vhost: Use opaque data in SVQDescState Eugenio Pérez
2022-07-16 11:34 ` [RFC PATCH 07/12] vhost: Add VhostVDPAStartOp operation Eugenio Pérez
2022-07-17 11:01 ` Eugenio Perez Martin
2022-07-18 8:50 ` Jason Wang
2022-07-18 9:08 ` Eugenio Perez Martin
2022-07-16 11:34 ` [RFC PATCH 08/12] vdpa: Add vhost_vdpa_start_control_svq Eugenio Pérez
2022-07-16 11:34 ` [RFC PATCH 09/12] vdpa: Extract vhost_vdpa_net_svq_add from vhost_vdpa_net_handle_ctrl_avail Eugenio Pérez
2022-07-18 8:53 ` Jason Wang
2022-07-18 10:15 ` Eugenio Perez Martin
2022-07-16 11:34 ` [RFC PATCH 10/12] vdpa: Make vhost_vdpa_net_cvq_map_elem accept any out sg Eugenio Pérez
2022-07-16 11:34 ` [RFC PATCH 11/12] vdpa: Add virtio-net mac address via CVQ at start Eugenio Pérez
2022-07-18 8:55 ` Jason Wang
2022-07-18 9:07 ` Eugenio Perez Martin
2022-07-16 11:34 ` [RFC PATCH 12/12] vdpa: Delete CVQ migration blocker Eugenio Pérez
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220716113407.2730331-1-eperezma@redhat.com \
--to=eperezma@redhat.com \
--cc=arei.gonglei@huawei.com \
--cc=armbru@redhat.com \
--cc=cohuck@redhat.com \
--cc=eblake@redhat.com \
--cc=eli@mellanox.com \
--cc=gdawar@xilinx.com \
--cc=hanand@xilinx.com \
--cc=jasowang@redhat.com \
--cc=lingshan.zhu@intel.com \
--cc=liuxiangdong5@huawei.com \
--cc=lulu@redhat.com \
--cc=lvivier@redhat.com \
--cc=mst@redhat.com \
--cc=parav@mellanox.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=sgarzare@redhat.com \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).