[dpdk-stable] patch 'vhost: fix zmbufs array leak after NUMA realloc' has been queued to stable release 18.08.1
Kevin Traynor
ktraynor at redhat.com
Tue Nov 20 20:12:17 CET 2018
Hi,
FYI, your patch has been queued to stable release 18.08.1
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/23/18. So please
shout if anyone has objections.
Also note that after the patch there's a diff of the upstream commit vs the patch applied
to the branch. If the code is different (ie: not only metadata diffs), due for example to
a change in context or macro names, please double check it.
Thanks.
Kevin Traynor
---
>From c816d40a36af4341b05137dc064a29287abee12a Mon Sep 17 00:00:00 2001
From: Ilya Maximets <i.maximets at samsung.com>
Date: Wed, 15 Aug 2018 17:54:39 +0300
Subject: [PATCH] vhost: fix zmbufs array leak after NUMA realloc
[ upstream commit 28925156d91bedb8f4b85b10dd9f3303a4d9e759 ]
'numa_realloc()' allocates 'zmbufs' even if zero copy mode
is not configured. This leads to memory leak, because array
is freed only for zero copy case.
Fixes: 2651726defb7 ("vhost: do deep copy while reallocating queue")
Signed-off-by: Ilya Maximets <i.maximets at samsung.com>
Reviewed-by: Tiwei Bie <tiwei.bie at intel.com>
---
lib/librte_vhost/vhost_user.c | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index a2d4c9ffc..9aa1ce118 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -358,9 +358,11 @@ numa_realloc(struct virtio_net *dev, int index)
TAILQ_INIT(&vq->zmbuf_list);
- new_zmbuf = rte_malloc_socket(NULL, vq->zmbuf_size *
- sizeof(struct zcopy_mbuf), 0, newnode);
- if (new_zmbuf) {
- rte_free(vq->zmbufs);
- vq->zmbufs = new_zmbuf;
+ if (dev->dequeue_zero_copy) {
+ new_zmbuf = rte_malloc_socket(NULL, vq->zmbuf_size *
+ sizeof(struct zcopy_mbuf), 0, newnode);
+ if (new_zmbuf) {
+ rte_free(vq->zmbufs);
+ vq->zmbufs = new_zmbuf;
+ }
}
--
2.19.0
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2018-11-20 17:53:08.118520121 +0000
+++ 0027-vhost-fix-zmbufs-array-leak-after-NUMA-realloc.patch 2018-11-20 17:53:07.000000000 +0000
@@ -1,14 +1,15 @@
-From 28925156d91bedb8f4b85b10dd9f3303a4d9e759 Mon Sep 17 00:00:00 2001
+From c816d40a36af4341b05137dc064a29287abee12a Mon Sep 17 00:00:00 2001
From: Ilya Maximets <i.maximets at samsung.com>
Date: Wed, 15 Aug 2018 17:54:39 +0300
Subject: [PATCH] vhost: fix zmbufs array leak after NUMA realloc
+[ upstream commit 28925156d91bedb8f4b85b10dd9f3303a4d9e759 ]
+
'numa_realloc()' allocates 'zmbufs' even if zero copy mode
is not configured. This leads to memory leak, because array
is freed only for zero copy case.
Fixes: 2651726defb7 ("vhost: do deep copy while reallocating queue")
-CC: stable at dpdk.org
Signed-off-by: Ilya Maximets <i.maximets at samsung.com>
Reviewed-by: Tiwei Bie <tiwei.bie at intel.com>
More information about the stable
mailing list