Commit e7fe43af authored by yangerkun's avatar yangerkun Committed by Greg Kroah-Hartman

slip: stop double free sl->dev in slip_open

After include 3b5a3997 ("slip: Fix memory leak in slip_open error path")
and e58c1912 ("slip: Fix use-after-free Read in slip_open") with 4.4.y/4.9.y.
We will trigger a bug since we can double free sl->dev in slip_open. Actually,
we should backport cf124db5 ("net: Fix inconsistent teardown and release
of private netdev state.") too since it has delete free_netdev from sl_free_netdev.
Fix it by delete free_netdev from slip_open.
Signed-off-by: default avataryangerkun <yangerkun@huawei.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 24d85373
...@@ -868,7 +868,6 @@ static int slip_open(struct tty_struct *tty) ...@@ -868,7 +868,6 @@ static int slip_open(struct tty_struct *tty)
tty->disc_data = NULL; tty->disc_data = NULL;
clear_bit(SLF_INUSE, &sl->flags); clear_bit(SLF_INUSE, &sl->flags);
sl_free_netdev(sl->dev); sl_free_netdev(sl->dev);
free_netdev(sl->dev);
err_exit: err_exit:
rtnl_unlock(); rtnl_unlock();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment