[dpdk-dev] [PATCH] net/bonding: fix segfault when creating bonded device

Thomas Monjalon thomas at monjalon.net
Wed Oct 31 16:44:21 CET 2018


31/10/2018 16:37, Chas Williams:
> 
> On 10/31/2018 11:06 AM, Thomas Monjalon wrote:
> > 31/10/2018 14:59, Radu Nicolau:
> >> After the patch below the call to rte_eth_bond_8023ad_agg_selection_set
> >> from probe() segfaults; there is no need to call the function, just set
> >> the mode directly.
> >>
> >> Fixes: 391797f04208 ("drivers/bus: move driver assignment to end of probing")
> > 
> > It would not segfault if you call rte_eth_dev_probing_finish() at the
> > real end of the probing function. Then the port will be considered not
> > valid in rte_eth_bond_8023ad_agg_selection_set().
> > It does not solve your problem but it is more correct.
> > So I suggest to revert this patch (which was a wrong fix):
> > 	http://git.dpdk.org/dpdk/commit/?id=1620175
> 
> Or just make the change proposed in this commit and also move this
> section before the probing finish.  This is performing initial setup of
> the interface and it doesn't need to use the public API to do this.
> And this should be done before the public API can access the device.

Yes, this is what I proposed, but said differently :)

Please add Fixes: 1620175b400e ("net/bonding: fix invalid port id")

> > Then the issue is to allow configuring a port before the end of probing.
> 
> That shouldn't be allowed of course.
> 
> > This patch is workarounding the public API which checks port validity.
> > I think it is a good approach.





More information about the dev mailing list