vdpa-dev: add get_vhost() callback for vhost-vdpa device
Commit c255488d67 "virtio: add vhost support for virtio devices"
added the get_vhost() function, but it did not include vhost-vdpa devices.
So when I use the vdpa device and query the status of the vdpa device
with the x-query-virtio-status qmp command, since vdpa does not implement
vhost_get, it will cause qemu to crash.
Therefore, in order to obtain the status of the virtio device under vhost-vdpa,
we need to add a vhost_get implement for the vdpa device.
Co-developed-by: Miao Kezhan <miaokezhan@baidu.com>
Signed-off-by: Miao Kezhan <miaokezhan@baidu.com>
Signed-off-by: Li Zhaoxin <lizhaoxin04@baidu.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Message-ID: <2778f817cb6740a15ecb37927804a67288b062d1.1758860411.git.lizhaoxin04@baidu.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
d9ec848fb5
commit
221e59e383
1 changed files with 7 additions and 0 deletions
|
|
@ -338,6 +338,12 @@ static int vhost_vdpa_device_set_status(VirtIODevice *vdev, uint8_t status)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static struct vhost_dev *vhost_vdpa_device_get_vhost(VirtIODevice *vdev)
|
||||
{
|
||||
VhostVdpaDevice *s = VHOST_VDPA_DEVICE(vdev);
|
||||
return &s->dev;
|
||||
}
|
||||
|
||||
static const Property vhost_vdpa_device_properties[] = {
|
||||
DEFINE_PROP_STRING("vhostdev", VhostVdpaDevice, vhostdev),
|
||||
DEFINE_PROP_UINT16("queue-size", VhostVdpaDevice, queue_size, 0),
|
||||
|
|
@ -369,6 +375,7 @@ static void vhost_vdpa_device_class_init(ObjectClass *klass, const void *data)
|
|||
vdc->set_config = vhost_vdpa_device_set_config;
|
||||
vdc->get_features = vhost_vdpa_device_get_features;
|
||||
vdc->set_status = vhost_vdpa_device_set_status;
|
||||
vdc->get_vhost = vhost_vdpa_device_get_vhost;
|
||||
}
|
||||
|
||||
static void vhost_vdpa_device_instance_init(Object *obj)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue