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

Awal, Mohammad Abdul mohammad.abdul.awal at intel.com
Wed Apr 3 19:30:47 CEST 2019


The null checks are for the input param "char *name" of APIs rte_eth_dev_allocate and rte_eth_dev_attach_secondary.
I will change the err msg to suggested one.


> -----Original Message-----
> From: Yigit, Ferruh
> Sent: Wednesday, April 3, 2019 5:35 PM
> To: Thomas Monjalon <thomas at monjalon.net>; Awal, Mohammad Abdul
> <mohammad.abdul.awal at intel.com>
> Cc: dev at dpdk.org; arybchenko at solarflare.com; stable at dpdk.org
> Subject: Re: [PATCH 1/3] ethdev: fix null pointer checking
> 
> 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 stable mailing list