[dpdk-dev] [PATCH 1/3] ethdev: fix null pointer checking

Ferruh Yigit ferruh.yigit at intel.com
Wed Apr 3 18:35:22 CEST 2019


On 4/3/2019 5:27 PM, Thomas Monjalon wrote:
> 03/04/2019 18:07, Mohammad Abdul Awal:
>> Null value for parameter name will cause segfault for the
>> strnlen and strcmp functions.
> 
> I'm not sure we want such obvious checks for all APIs.
> Here I would say yes.

These are internal functions, not APIs.
I am for verifying input for (all) APIs but not for internal functions, drivers
should call them and they are in our control, if they are passing NULL we can
fix them :)

> 
>> Fixes: 0b33b68d12 ("ethdev: export allocate function")
>> Fixes: 942661004c ("ethdev: export secondary attach function")
>> Cc: stable at dpdk.org
>>
>> Signed-off-by: Mohammad Abdul Awal <mohammad.abdul.awal at intel.com>
>> ---
>> --- a/lib/librte_ethdev/rte_ethdev.c
>> +++ b/lib/librte_ethdev/rte_ethdev.c
>> @@ -440,6 +440,11 @@ rte_eth_dev_allocate(const char *name)
>>  	struct rte_eth_dev *eth_dev = NULL;
>>  	size_t name_len;
>>  
>> +	if (name == NULL) {
>> +		RTE_ETHDEV_LOG(ERR, "Null pointer is specified\n");
> 
> This is a very generic error message.
> It might be "Fail to allocate port with empty name"
> 
>> @@ -492,6 +497,11 @@ rte_eth_dev_attach_secondary(const char *name)
>>  	uint16_t i;
>>  	struct rte_eth_dev *eth_dev = NULL;
>>  
>> +	if (name == NULL) {
>> +		RTE_ETHDEV_LOG(ERR, "Null pointer is specified\n");
> 
> "Fail to attach port with empty name"
> 
> 
> 



More information about the dev mailing list