From mboxrd@z Thu Jan 1 00:00:00 1970 From: Olivier Matz Subject: Re: [dpdk-stable] [PATCH] testpmd: fix crash when mempool allocation fails Date: Fri, 9 Sep 2016 10:43:23 +0200 Message-ID: <0504b8cb-891c-99c7-dbc7-fd2ddd11423d@6wind.com> References: <1473408985-13131-1-git-send-email-olivier.matz@6wind.com> <20160909082501.GW7328@yliu-dev.sh.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, pablo.de.lara.guarch@intel.com, stable@dpdk.org To: Yuanhan Liu Return-path: In-Reply-To: <20160909082501.GW7328@yliu-dev.sh.intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Yuanhan, On 09/09/2016 10:25 AM, Yuanhan Liu wrote: > On Fri, Sep 09, 2016 at 10:16:25AM +0200, Olivier Matz wrote: >> Avoid access to mempool pointer if it is NULL. >> >> Fixes: b19a0c75a0d4 ("app/testpmd: remove anonymous mempool code") >> Coverity issue: 127553 >> >> Signed-off-by: Olivier Matz >> --- >> app/test-pmd/testpmd.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c >> index 1428974..e0f8285 100644 >> --- a/app/test-pmd/testpmd.c >> +++ b/app/test-pmd/testpmd.c >> @@ -444,10 +444,13 @@ mbuf_pool_create(uint16_t mbuf_seg_size, unsigned nb_mbuf, >> mb_size, (unsigned) mb_mempool_cache, >> sizeof(struct rte_pktmbuf_pool_private), >> socket_id, 0); >> + if (rte_mp == NULL) >> + goto err; >> >> if (rte_mempool_populate_anon(rte_mp) == 0) { >> rte_mempool_free(rte_mp); >> rte_mp = NULL; >> + goto err; >> } >> rte_pktmbuf_pool_init(rte_mp, NULL); >> rte_mempool_obj_iter(rte_mp, rte_pktmbuf_init, NULL); >> @@ -458,6 +461,7 @@ mbuf_pool_create(uint16_t mbuf_seg_size, unsigned nb_mbuf, >> } >> } >> >> + err: > > A minor nit: there is a heading white space char. > Well, that's something I've been doing since a long time due to my editor config, but I cannot find any good reason for doing that. I'll send a v2 without this space (and fix my config for next times ;)) Olivier