From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 0C48CA0096 for ; Wed, 8 May 2019 12:16:38 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 02C3D2862; Wed, 8 May 2019 12:16:38 +0200 (CEST) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id C8DFD2862 for ; Wed, 8 May 2019 12:16:36 +0200 (CEST) Received: from smtp.corp.redhat.com (int-mx08.intmail.prod.int.phx2.redhat.com [10.5.11.23]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 342473003D44; Wed, 8 May 2019 10:16:36 +0000 (UTC) Received: from rh.redhat.com (ovpn-117-210.ams2.redhat.com [10.36.117.210]) by smtp.corp.redhat.com (Postfix) with ESMTP id 2325E1A267; Wed, 8 May 2019 10:16:34 +0000 (UTC) From: Kevin Traynor To: Stephen Hemminger Cc: Stephen Hemminger , dpdk stable Date: Wed, 8 May 2019 11:15:08 +0100 Message-Id: <20190508101534.8984-26-ktraynor@redhat.com> In-Reply-To: <20190508101534.8984-1-ktraynor@redhat.com> References: <20190508101534.8984-1-ktraynor@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.84 on 10.5.11.23 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.46]); Wed, 08 May 2019 10:16:36 +0000 (UTC) Subject: [dpdk-stable] patch 'bus/vmbus: fix resource leak on error' has been queued to LTS release 18.11.2 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 18.11.2 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 05/13/19. 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. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable-queue This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable-queue/commit/83280795ebec271266b3dd466685134ddef18888 Thanks. Kevin Traynor --- >From 83280795ebec271266b3dd466685134ddef18888 Mon Sep 17 00:00:00 2001 From: Stephen Hemminger Date: Wed, 17 Apr 2019 11:45:06 -0700 Subject: [PATCH] bus/vmbus: fix resource leak on error [ upstream commit 26ed007067e86bb3d587c048d130cd13bee6b07a ] If secondary process attempt to mmap the resource resulted in the wrong address, then it would leave behind the bad mmap. Coverity issue: 337675, 337664 Fixes: 2a28a502c607 ("bus/vmbus: map ring in secondary process") Signed-off-by: Stephen Hemminger --- drivers/bus/vmbus/linux/vmbus_uio.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/bus/vmbus/linux/vmbus_uio.c b/drivers/bus/vmbus/linux/vmbus_uio.c index a6b3e9201..7cab5c19f 100644 --- a/drivers/bus/vmbus/linux/vmbus_uio.c +++ b/drivers/bus/vmbus/linux/vmbus_uio.c @@ -284,8 +284,10 @@ vmbus_uio_map_secondary_subchan(const struct rte_vmbus_device *dev, VMBUS_LOG(ERR, "mmap subchan %u in secondary failed", chan->relid); - else + else { VMBUS_LOG(ERR, "mmap subchan %u in secondary address mismatch", chan->relid); + vmbus_unmap_resource(mapaddr, 2 * ring_size); + } return -1; } -- 2.20.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2019-05-08 11:05:07.137443768 +0100 +++ 0026-bus-vmbus-fix-resource-leak-on-error.patch 2019-05-08 11:05:05.810933159 +0100 @@ -1 +1 @@ -From 26ed007067e86bb3d587c048d130cd13bee6b07a Mon Sep 17 00:00:00 2001 +From 83280795ebec271266b3dd466685134ddef18888 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 26ed007067e86bb3d587c048d130cd13bee6b07a ] + @@ -14,3 +16,2 @@ - drivers/bus/vmbus/linux/vmbus_uio.c | 4 +++- - drivers/bus/vmbus/vmbus_common_uio.c | 4 +++- - 2 files changed, 6 insertions(+), 2 deletions(-) + drivers/bus/vmbus/linux/vmbus_uio.c | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) @@ -19 +20 @@ -index fb60ee126..be6b677f9 100644 +index a6b3e9201..7cab5c19f 100644 @@ -34,15 +34,0 @@ -diff --git a/drivers/bus/vmbus/vmbus_common_uio.c b/drivers/bus/vmbus/vmbus_common_uio.c -index 1aa5cb2e4..8e476f2ea 100644 ---- a/drivers/bus/vmbus/vmbus_common_uio.c -+++ b/drivers/bus/vmbus/vmbus_common_uio.c -@@ -76,7 +76,9 @@ vmbus_uio_map_secondary(struct rte_vmbus_device *dev) - VMBUS_LOG(ERR, - "mmap resource %d in secondary failed", i); -- else -+ else { - VMBUS_LOG(ERR, - "mmap resource %d address mismatch", i); -+ vmbus_unmap_resource(mapaddr, uio_res->maps[i].size); -+ } - - close(fd);