b0f48b6ebc
Signed-off-by: Felix Fietkau <nbd@openwrt.org> SVN-Revision: 47026
17 lines
618 B
Diff
17 lines
618 B
Diff
Fix crash with actions performed on the underlying interface (MAC address,
|
|
MTU or link state update). This triggers pppoe_flush_dev(), which cleans up
|
|
the device without announcing it in sk->sk_state.
|
|
|
|
Patch by Guillaume Nault (pulled from netdev@vger)
|
|
|
|
--- a/drivers/net/ppp/pppoe.c
|
|
+++ b/drivers/net/ppp/pppoe.c
|
|
@@ -313,7 +313,6 @@ static void pppoe_flush_dev(struct net_d
|
|
if (po->pppoe_dev == dev &&
|
|
sk->sk_state & (PPPOX_CONNECTED | PPPOX_BOUND | PPPOX_ZOMBIE)) {
|
|
pppox_unbind_sock(sk);
|
|
- sk->sk_state = PPPOX_ZOMBIE;
|
|
sk->sk_state_change(sk);
|
|
po->pppoe_dev = NULL;
|
|
dev_put(dev);
|