From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-f182.google.com (mail-wr0-f182.google.com [209.85.128.182]) by dpdk.org (Postfix) with ESMTP id 709C35A3E for ; Fri, 7 Apr 2017 17:51:06 +0200 (CEST) Received: by mail-wr0-f182.google.com with SMTP id c55so38506866wrc.3 for ; Fri, 07 Apr 2017 08:51:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=iZwQTOG8OMzOeEN0OGeIPm3fq2W2nqygb19Oo51D4uM=; b=cfcHb1d9g5vpqjpsXdVE3As6nP5CcAX4w67GltHnXwsEf3wMFkUv1tWGSZvvY3p+E4 ZacGGL2PgsVKIJ9KFc14r22N9H2Rbcf5KmxApHsjyp9tnLCgFDmdygZpAvfzh6FH1IcT u4nt9Ie9gzdTr1NGuX1elN6SuiyBZ14WN1udvZBbOYlfIF1eLqLQXk+Qr+Tu8L40pgXC mPGP0RZjUF4fWh0MAgI755Ngwuldk5kx1JHUTvCfcxWqAHGmTR0VklXxKw3xNN87uc0T rorASbrr4/Fj1n/I55prmt0cbT7xigZiJGoAB4k+LeAYtn+B1d4SyDPLWTWPTXRTWAqG X45A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=iZwQTOG8OMzOeEN0OGeIPm3fq2W2nqygb19Oo51D4uM=; b=OoT2gCmlVdUv3IVEVwUgNyFxQakyi2VhRbrbhR5rwPsC4YAGxJZWn1xUBThQr7O+h4 1swyPI91l1vH1OMjnkV/kG2K0WbFBKmvNkf5GX2K4uSGOmiKxNo/kPk8paaEpfxqOf1u qiOkBHVzS+TYB+UA0+znwHeYe3hIjzj6Cn5sZtYuQ3OBYNIeRqlJbaprn+rvpyPO9Eim w94p8iRAWGA3hY7JcEkVjgzIh94okRNyXanaNSHNBAsymkBCLfN3nBhwP8M5nAJzK+7J NbXKawsiMJ3qNksG5s9TDtvNOP/H7PA+E/rJjMhyfBWNbtjlE9IY2+fSnrexVhwAp9oa C5/Q== X-Gm-Message-State: AN3rC/73/av3G60rYmLFUqxE/IRCpmYALc3ztroDvLzRXj5hFS8KSclljLyu8zZUJKPL3QV1 X-Received: by 10.223.154.129 with SMTP id a1mr6558699wrc.5.1491580265906; Fri, 07 Apr 2017 08:51:05 -0700 (PDT) Received: from platinum (2a01cb0c03c651000226b0fffeed02fc.ipv6.abo.wanadoo.fr. [2a01:cb0c:3c6:5100:226:b0ff:feed:2fc]) by smtp.gmail.com with ESMTPSA id l186sm1469161wmd.17.2017.04.07.08.51.05 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 07 Apr 2017 08:51:05 -0700 (PDT) Date: Fri, 7 Apr 2017 17:51:02 +0200 From: Olivier Matz To: Santosh Shukla Cc: dev@dpdk.org, hemant.agrawal@nxp.com, shreyansh.jain@nxp.com, stable@dpdk.org Message-ID: <20170407175102.4f2152c1@platinum> In-Reply-To: <20170406064549.7966-1-santosh.shukla@caviumnetworks.com> References: <1491382264-23489-1-git-send-email-santosh.shukla@caviumnetworks.com> <20170406064549.7966-1-santosh.shukla@caviumnetworks.com> X-Mailer: Claws Mail 3.14.1 (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH v2 1/2] test/mempool_perf: Free mempool on exit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 07 Apr 2017 15:51:06 -0000 Hi Santosh, On Thu, 6 Apr 2017 12:15:48 +0530, Santosh Shukla wrote: > Mempool_perf test not freeing pool memory. > > Cc: stable@dpdk.org > Signed-off-by: Santosh Shukla > Acked-by: Shreyansh Jain > --- > v1 --> v2: > * Fixed patch context > > test/test/test_mempool_perf.c | 31 +++++++++++++++++++------------ > 1 file changed, 19 insertions(+), 12 deletions(-) > > diff --git a/test/test/test_mempool_perf.c b/test/test/test_mempool_perf.c > index ebf1721ac..3c45971ab 100644 > --- a/test/test/test_mempool_perf.c > +++ b/test/test/test_mempool_perf.c > @@ -312,6 +312,8 @@ do_one_mempool_test(unsigned cores) > static int > test_mempool_perf(void) > { > + int ret = -1; > + > rte_atomic32_init(&synchro); > > /* create a mempool (without cache) */ > @@ -322,7 +324,7 @@ test_mempool_perf(void) > my_obj_init, NULL, > SOCKET_ID_ANY, 0); > if (mp_nocache == NULL) > - return -1; > + goto err; > > /* create a mempool (with cache) */ > if (mp_cache == NULL) [...] > > - return 0; > + ret = 0; > + > +err: > + rte_mempool_free(mp_cache); > + rte_mempool_free(mp_nocache); > + return ret; Since mp_cache and mp_nocache are global variables, this won't work properly due to the way mempool are created: /* create a mempool (without cache) */ if (mp_nocache == NULL) mp_nocache = rte_mempool_create("perf_test_nocache", MEMPOOL_SIZE, MEMPOOL_ELT_SIZE, 0, 0, NULL, NULL, my_obj_init, NULL, SOCKET_ID_ANY, 0); The if() should be removed, else we'll have a use after free the next time. If you want to do more clean-up, you can try to remove the global variables, but it's maybe harder. Thanks, Olivier