[dpdk-dev] [dpdk-stable] [PATCH] testpmd: fix crash when mempool allocation fails

Olivier Matz olivier.matz at 6wind.com
Fri Sep 9 10:43:23 CEST 2016


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 <olivier.matz at 6wind.com>
>> ---
>>  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


More information about the dev mailing list