mirror of https://gitee.com/openkylin/qemu.git
vhost-user-blk: Use started flag in vhost_user_blk_set_status()
Use started flag in vhost_user_blk_set_status() to decide if starting vhost-user backend or not. Signed-off-by: Xie Yongji <xieyongji@baidu.com> Signed-off-by: Zhang Yu <zhangyu31@baidu.com> Message-Id: <20190320112646.3712-4-xieyongji@baidu.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
This commit is contained in:
parent
7dc7f12297
commit
96cb549817
|
@ -190,7 +190,7 @@ static void vhost_user_blk_stop(VirtIODevice *vdev)
|
|||
static void vhost_user_blk_set_status(VirtIODevice *vdev, uint8_t status)
|
||||
{
|
||||
VHostUserBlk *s = VHOST_USER_BLK(vdev);
|
||||
bool should_start = status & VIRTIO_CONFIG_S_DRIVER_OK;
|
||||
bool should_start = vdev->started;
|
||||
|
||||
if (!vdev->vm_running) {
|
||||
should_start = false;
|
||||
|
@ -350,7 +350,7 @@ static void vhost_user_blk_device_unrealize(DeviceState *dev, Error **errp)
|
|||
VHostUserBlk *s = VHOST_USER_BLK(dev);
|
||||
struct vhost_virtqueue *vqs = s->dev.vqs;
|
||||
|
||||
vhost_user_blk_set_status(vdev, 0);
|
||||
virtio_set_status(vdev, 0);
|
||||
vhost_dev_cleanup(&s->dev);
|
||||
vhost_dev_free_inflight(s->inflight);
|
||||
g_free(vqs);
|
||||
|
|
Loading…
Reference in New Issue