[dpdk-dev] [PATCH v2] bus/vdev: fix scope of device list lock

Gaëtan Rivet gaetan.rivet at 6wind.com
Tue May 22 11:11:06 CEST 2018


On Mon, May 21, 2018 at 05:28:52PM +0000, Matan Azrad wrote:
> 
> 
> From: Thomas Monjalon
> > The lock vdev_device_list_lock was taken before calling "remove" function for
> > the device.
> > So it prevents to remove sub-devices (as in failsafe) inside its own "remove"
> > function, because of a deadlock.
> > 
> > The lock is now only protecting the device list inside the bus driver.
> > 
> > Fixes: 35f462839b69 ("bus/vdev: add lock on device list")
> > 
> > Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
> Tested-by: Matan Azrad <matan at mellanox.com>

If these locks were necessary, they would be missing as well for
rte_devargs. Jianfeng inquired about it, I think it should be followed
upon.

Restricting the scope of the lock here could maybe re-introduce the bug
that motivated their introduction in the first place, as the
devargs_remove() is not in the critical section anymore.

However, this is an rte_devargs issue, not a vdev bus one, so
the fix makes sense and I'd like to have it ASAP for failsafe.
Without a vdev bus maintainer left:

Acked-by: Gaetan Rivet <gaetan.rivet at 6wind.com>

-- 
Gaëtan Rivet
6WIND


More information about the dev mailing list