Message ID | 20230130140225.77964-1-akihiko.odaki@daynix.com |
---|---|
State | New |
Headers | show |
Series | vhost-user-fs: Back up vqs before cleaning up vhost_dev | expand |
On Mon, 30 Jan 2023 at 09:03, Akihiko Odaki <akihiko.odaki@daynix.com> wrote: > > vhost_dev_cleanup() clears vhost_dev so back up its vqs member to free > the memory pointed by the member. > > Fixes: 98fc1ada4c ("virtio: add vhost-user-fs base device") > Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> > --- > hw/virtio/vhost-user-fs.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) Merged into my block tree, thank you! Stefan
On Mon, Jan 30, 2023 at 11:02:25PM +0900, Akihiko Odaki wrote: > vhost_dev_cleanup() clears vhost_dev so back up its vqs member to free > the memory pointed by the member. > > Fixes: 98fc1ada4c ("virtio: add vhost-user-fs base device") > Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> > --- > hw/virtio/vhost-user-fs.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/hw/virtio/vhost-user-fs.c b/hw/virtio/vhost-user-fs.c > index f5049735ac..83fc20e49e 100644 > --- a/hw/virtio/vhost-user-fs.c > +++ b/hw/virtio/vhost-user-fs.c > @@ -273,6 +273,7 @@ static void vuf_device_unrealize(DeviceState *dev) > { > VirtIODevice *vdev = VIRTIO_DEVICE(dev); > VHostUserFS *fs = VHOST_USER_FS(dev); > + struct vhost_virtqueue *vhost_vqs = fs->vhost_dev.vqs; > int i; > > /* This will stop vhost backend if appropriate. */ > @@ -288,8 +289,7 @@ static void vuf_device_unrealize(DeviceState *dev) > } > g_free(fs->req_vqs); > virtio_cleanup(vdev); > - g_free(fs->vhost_dev.vqs); > - fs->vhost_dev.vqs = NULL; > + g_free(vhost_vqs); > } > > static struct vhost_dev *vuf_get_vhost(VirtIODevice *vdev) > -- > 2.39.1
diff --git a/hw/virtio/vhost-user-fs.c b/hw/virtio/vhost-user-fs.c index f5049735ac..83fc20e49e 100644 --- a/hw/virtio/vhost-user-fs.c +++ b/hw/virtio/vhost-user-fs.c @@ -273,6 +273,7 @@ static void vuf_device_unrealize(DeviceState *dev) { VirtIODevice *vdev = VIRTIO_DEVICE(dev); VHostUserFS *fs = VHOST_USER_FS(dev); + struct vhost_virtqueue *vhost_vqs = fs->vhost_dev.vqs; int i; /* This will stop vhost backend if appropriate. */ @@ -288,8 +289,7 @@ static void vuf_device_unrealize(DeviceState *dev) } g_free(fs->req_vqs); virtio_cleanup(vdev); - g_free(fs->vhost_dev.vqs); - fs->vhost_dev.vqs = NULL; + g_free(vhost_vqs); } static struct vhost_dev *vuf_get_vhost(VirtIODevice *vdev)
vhost_dev_cleanup() clears vhost_dev so back up its vqs member to free the memory pointed by the member. Fixes: 98fc1ada4c ("virtio: add vhost-user-fs base device") Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> --- hw/virtio/vhost-user-fs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)