[PATCH -next] virtio: fix possible memory leak in virtqueue_add()

From: Wei Yongjun
Date: Tue Aug 02 2016 - 10:01:21 EST


desc may malloced in virtqueue_add() and should be freed before
leaving from the error handling cases, otherwise it will cause
memory leak.

Signed-off-by: Wei Yongjun <weiyj.lk@xxxxxxxxx>
---
drivers/virtio/virtio_ring.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/virtio/virtio_ring.c b/drivers/virtio/virtio_ring.c
index 114a0c8..bda71ef 100644
--- a/drivers/virtio/virtio_ring.c
+++ b/drivers/virtio/virtio_ring.c
@@ -328,6 +328,7 @@ static inline int virtqueue_add(struct virtqueue *_vq,
if (out_sgs)
vq->notify(&vq->vq);
END_USE(vq);
+ kfree(desc);
return -ENOSPC;
}