hw/virtio/virtio-pmem.c | 1 + 1 file changed, 1 insertion(+)
If error occurs while processing the virtio request we should call
'virtqueue_detach_element' to detach the element from the virtqueue
before free the elem.
Signed-off-by: Li Qiang <liq3ea@163.com>
---
hw/virtio/virtio-pmem.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c
index 1e0c137497..ddb0125901 100644
--- a/hw/virtio/virtio-pmem.c
+++ b/hw/virtio/virtio-pmem.c
@@ -77,6 +77,7 @@ static void virtio_pmem_flush(VirtIODevice *vdev, VirtQueue *vq)
if (req_data->elem.out_num < 1 || req_data->elem.in_num < 1) {
virtio_error(vdev, "virtio-pmem request not proper");
+ virtqueue_detach_element(vq, (VirtQueueElement *)req_data, 0);
g_free(req_data);
return;
}
--
2.17.1
> If error occurs while processing the virtio request we should call > 'virtqueue_detach_element' to detach the element from the virtqueue > before free the elem. > > Signed-off-by: Li Qiang <liq3ea@163.com> > --- > hw/virtio/virtio-pmem.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c > index 1e0c137497..ddb0125901 100644 > --- a/hw/virtio/virtio-pmem.c > +++ b/hw/virtio/virtio-pmem.c > @@ -77,6 +77,7 @@ static void virtio_pmem_flush(VirtIODevice *vdev, VirtQueue *vq) > > if (req_data->elem.out_num < 1 || req_data->elem.in_num < 1) { > virtio_error(vdev, "virtio-pmem request not proper"); > + virtqueue_detach_element(vq, (VirtQueueElement *)req_data, 0); > g_free(req_data); > return; > } > -- Reviewed-by: Pankaj Gupta <pankaj.gupta.linux@gmail.com> > 2.17.1 > >
Kindly ping. Li Qiang <liq3ea@163.com> 于2020年8月14日周五 上午12:52写道: > > If error occurs while processing the virtio request we should call > 'virtqueue_detach_element' to detach the element from the virtqueue > before free the elem. > > Signed-off-by: Li Qiang <liq3ea@163.com> > --- > hw/virtio/virtio-pmem.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c > index 1e0c137497..ddb0125901 100644 > --- a/hw/virtio/virtio-pmem.c > +++ b/hw/virtio/virtio-pmem.c > @@ -77,6 +77,7 @@ static void virtio_pmem_flush(VirtIODevice *vdev, VirtQueue *vq) > > if (req_data->elem.out_num < 1 || req_data->elem.in_num < 1) { > virtio_error(vdev, "virtio-pmem request not proper"); > + virtqueue_detach_element(vq, (VirtQueueElement *)req_data, 0); > g_free(req_data); > return; > } > -- > 2.17.1 > >
ping! Li Qiang <liq3ea@gmail.com> 于2020年8月28日周五 上午9:21写道: > > Kindly ping. > > Li Qiang <liq3ea@163.com> 于2020年8月14日周五 上午12:52写道: > > > > If error occurs while processing the virtio request we should call > > 'virtqueue_detach_element' to detach the element from the virtqueue > > before free the elem. > > > > Signed-off-by: Li Qiang <liq3ea@163.com> > > --- > > hw/virtio/virtio-pmem.c | 1 + > > 1 file changed, 1 insertion(+) > > > > diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c > > index 1e0c137497..ddb0125901 100644 > > --- a/hw/virtio/virtio-pmem.c > > +++ b/hw/virtio/virtio-pmem.c > > @@ -77,6 +77,7 @@ static void virtio_pmem_flush(VirtIODevice *vdev, VirtQueue *vq) > > > > if (req_data->elem.out_num < 1 || req_data->elem.in_num < 1) { > > virtio_error(vdev, "virtio-pmem request not proper"); > > + virtqueue_detach_element(vq, (VirtQueueElement *)req_data, 0); > > g_free(req_data); > > return; > > } > > -- > > 2.17.1 > > > >
Hi Michael, Please add while applying the patch. fixes: 5f503cd9f3 ("virtio-pmem: add virtio device") On Mon, 7 Sep 2020 at 03:38, Li Qiang <liq3ea@gmail.com> wrote: > > ping! > > Li Qiang <liq3ea@gmail.com> 于2020年8月28日周五 上午9:21写道: > > > > Kindly ping. > > > > Li Qiang <liq3ea@163.com> 于2020年8月14日周五 上午12:52写道: > > > > > > If error occurs while processing the virtio request we should call > > > 'virtqueue_detach_element' to detach the element from the virtqueue > > > before free the elem. > > > > > > Signed-off-by: Li Qiang <liq3ea@163.com> > > > --- > > > hw/virtio/virtio-pmem.c | 1 + > > > 1 file changed, 1 insertion(+) > > > > > > diff --git a/hw/virtio/virtio-pmem.c b/hw/virtio/virtio-pmem.c > > > index 1e0c137497..ddb0125901 100644 > > > --- a/hw/virtio/virtio-pmem.c > > > +++ b/hw/virtio/virtio-pmem.c > > > @@ -77,6 +77,7 @@ static void virtio_pmem_flush(VirtIODevice *vdev, VirtQueue *vq) > > > > > > if (req_data->elem.out_num < 1 || req_data->elem.in_num < 1) { > > > virtio_error(vdev, "virtio-pmem request not proper"); > > > + virtqueue_detach_element(vq, (VirtQueueElement *)req_data, 0); > > > g_free(req_data); > > > return; > > > } > > > -- > > > 2.17.1 > > > > > > >
© 2016 - 2024 Red Hat, Inc.