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 - 2026 Red Hat, Inc.