Message ID | 20210315194842.277740-5-eperezma@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | vDPA software assisted live migration | expand |
On 3/15/21 2:48 PM, Eugenio Pérez wrote: > Command to enable shadow virtqueue looks like: > > { "execute": "x-vhost-enable-shadow-vq", "arguments": { "name": "dev0", "enable": true } } > > Signed-off-by: Eugenio Pérez <eperezma@redhat.com> > --- > qapi/net.json | 22 ++++++++++++++++++++++ > hw/virtio/vhost.c | 6 ++++++ > 2 files changed, 28 insertions(+) > > diff --git a/qapi/net.json b/qapi/net.json > index c31748c87f..4c5f65d021 100644 > --- a/qapi/net.json > +++ b/qapi/net.json > @@ -77,6 +77,28 @@ > ## > { 'command': 'netdev_del', 'data': {'id': 'str'} } > > +## > +# @x-vhost-enable-shadow-vq: > +# > +# Use vhost shadow virtqueue. > +# > +# @name: the device name of the VirtIO device > +# > +# @enable: true to use he alternate shadow VQ notification path > +# > +# Returns: Error if failure, or 'no error' for success. Not found if vhost is not enabled. > +# > +# Since: 6.0 > +# > +# Example: > +# > +# -> { "execute": "x-vhost-enable-shadow-vq", "arguments": { "name": "virtio-net", "enable": false } } Long lines; please wrap to keep under 80 columns.
diff --git a/qapi/net.json b/qapi/net.json index c31748c87f..4c5f65d021 100644 --- a/qapi/net.json +++ b/qapi/net.json @@ -77,6 +77,28 @@ ## { 'command': 'netdev_del', 'data': {'id': 'str'} } +## +# @x-vhost-enable-shadow-vq: +# +# Use vhost shadow virtqueue. +# +# @name: the device name of the VirtIO device +# +# @enable: true to use he alternate shadow VQ notification path +# +# Returns: Error if failure, or 'no error' for success. Not found if vhost is not enabled. +# +# Since: 6.0 +# +# Example: +# +# -> { "execute": "x-vhost-enable-shadow-vq", "arguments": { "name": "virtio-net", "enable": false } } +# +## +{ 'command': 'x-vhost-enable-shadow-vq', + 'data': {'name': 'str', 'enable': 'bool'}, + 'if': 'defined(CONFIG_VHOST_KERNEL)' } + ## # @NetLegacyNicOptions: # diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c index 4680c0cfcf..97f1bcfa42 100644 --- a/hw/virtio/vhost.c +++ b/hw/virtio/vhost.c @@ -15,6 +15,7 @@ #include "qemu/osdep.h" #include "qapi/error.h" +#include "qapi/qapi-commands-net.h" #include "hw/virtio/vhost.h" #include "qemu/atomic.h" #include "qemu/range.h" @@ -1831,3 +1832,8 @@ int vhost_net_set_backend(struct vhost_dev *hdev, return -1; } + +void qmp_x_vhost_enable_shadow_vq(const char *name, bool enable, Error **errp) +{ + error_setg(errp, "Shadow virtqueue still not implemented"); +}
Command to enable shadow virtqueue looks like: { "execute": "x-vhost-enable-shadow-vq", "arguments": { "name": "dev0", "enable": true } } Signed-off-by: Eugenio Pérez <eperezma@redhat.com> --- qapi/net.json | 22 ++++++++++++++++++++++ hw/virtio/vhost.c | 6 ++++++ 2 files changed, 28 insertions(+)