slcan: not call free_netdev before rtnl_unlock in slcan_open
[ Upstream commit 2091a3d42b4f339eaeed11228e0cbe9d4f92f558 ] As the description before netdev_run_todo, we cannot call free_netdev before rtnl_unlock, fix it by reorder the code. This patch is a 1:1 copy of upstream slip.c commit f596c87005f7 ("slip: not call free_netdev before rtnl_unlock in slip_open"). Reported-by: yangerkun <yangerkun@huawei.com> Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
fc4342c714
commit
b0195abd3f
|
@ -621,7 +621,10 @@ err_free_chan:
|
||||||
tty->disc_data = NULL;
|
tty->disc_data = NULL;
|
||||||
clear_bit(SLF_INUSE, &sl->flags);
|
clear_bit(SLF_INUSE, &sl->flags);
|
||||||
slc_free_netdev(sl->dev);
|
slc_free_netdev(sl->dev);
|
||||||
|
/* do not call free_netdev before rtnl_unlock */
|
||||||
|
rtnl_unlock();
|
||||||
free_netdev(sl->dev);
|
free_netdev(sl->dev);
|
||||||
|
return err;
|
||||||
|
|
||||||
err_exit:
|
err_exit:
|
||||||
rtnl_unlock();
|
rtnl_unlock();
|
||||||
|
|
Loading…
Reference in New Issue
Block a user