From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <christian.ehrhardt@canonical.com>
Received: from youngberry.canonical.com (youngberry.canonical.com
 [91.189.89.112]) by dpdk.org (Postfix) with ESMTP id E740D2BD4
 for <dev@dpdk.org>; Mon, 21 Mar 2016 15:06:27 +0100 (CET)
Received: from 1.general.mandel.uk.vpn ([10.172.196.172]
 helo=localhost.localdomain)
 by youngberry.canonical.com with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16)
 (Exim 4.76) (envelope-from <christian.ehrhardt@canonical.com>)
 id 1ai0TS-0002zo-GY; Mon, 21 Mar 2016 14:06:26 +0000
From: Christian Ehrhardt <christian.ehrhardt@canonical.com>
To: christian.ehrhardt@canonical.com, bruce.richardson@intel.com, dev@dpdk.org,
 olivier.matz@6wind.com
Date: Mon, 21 Mar 2016 15:06:10 +0100
Message-Id: <1458569175-8742-1-git-send-email-christian.ehrhardt@canonical.com>
X-Mailer: git-send-email 2.7.3
In-Reply-To: <1458131629-21925-1-git-send-email-christian.ehrhardt@canonical.com>
References: <1458131629-21925-1-git-send-email-christian.ehrhardt@canonical.com>
Subject: [dpdk-dev] [PATCH v4 0/5] lpm allocation fixes
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Mon, 21 Mar 2016 14:06:28 -0000

Poking a bit on autotest revealed a few shortcomings in the lpm allocation path.
Thanks to the feedback to the first revision of the patches here v2.
Also Oliver Matz spotted similar issues and made me aware - thanks!
Integrating them revealed even more use after free / leak issues.

*updates in v4*
- re-removing the { } on single line ifs accidentially droped in v3
- adding the ack of Oliver Matz

*updates in v3*
- lpm create/free path for v20 and v1604 got the same fixes that were
  already identified for lpm6 before

*updates in v2*
- lpm/lpm6 patches split
- following dpdk coding guidelines regarding single line if's
- adding singed-off and acked-bys gathered so far
- combine all three related patches in one series

Christian Ehrhardt (5):
  lpm6: fix use after free of lpm in rte_lpm6_create
  lpm6: fix missing free of rules_tbl and lpm
  lpm: fix missing free of lpm
  lpm: fix use after free of lpm in rte_lpm_create*
  lpm: fix missing free of rules_tbl and lpm in rte_lpm_free*

 lib/librte_lpm/rte_lpm.c  | 24 ++++++++++--------------
 lib/librte_lpm/rte_lpm6.c | 11 +++++------
 2 files changed, 15 insertions(+), 20 deletions(-)

-- 
2.7.3