-
- Downloads
devlink: disallow reload operation during device cleanup
There is a race between driver code that does setup/cleanup of device and devlink reload operation that in some drivers works with the same code. Use after free could we easily obtained by running: while true; do echo 10 > /sys/bus/netdevsim/new_device devlink dev reload netdevsim/netdevsim10 & echo 10 > /sys/bus/netdevsim/del_device done Fix this by enabling reload only after setup of device is complete and disabling it at the beginning of the cleanup process. Reported-by:Ido Schimmel <idosch@mellanox.com> Fixes: 2d8dc5bb ("devlink: Add support for reload") Signed-off-by:
Jiri Pirko <jiri@mellanox.com> Acked-by:
Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
- drivers/net/ethernet/mellanox/mlx4/main.c 3 additions, 0 deletionsdrivers/net/ethernet/mellanox/mlx4/main.c
- drivers/net/ethernet/mellanox/mlxsw/core.c 5 additions, 1 deletiondrivers/net/ethernet/mellanox/mlxsw/core.c
- drivers/net/netdevsim/dev.c 3 additions, 0 deletionsdrivers/net/netdevsim/dev.c
- include/net/devlink.h 5 additions, 2 deletionsinclude/net/devlink.h
- net/core/devlink.c 41 additions, 1 deletionnet/core/devlink.c
Loading
Please register or sign in to comment