Skip to content

Commit 2b018d5

Browse files
xdxudavem330
authored andcommitted
pppoe: drop PPPOX_ZOMBIEs in pppoe_release
When PPPOE is running over a virtual ethernet interface (e.g., a bonding interface) and the user tries to delete the interface in case the PPPOE state is ZOMBIE, the kernel will loop forever while unregistering net_device for the reference count is not decreased to zero which should have been done with dev_put(). Signed-off-by: Xiaodong Xu <[email protected]> Signed-off-by: David S. Miller <[email protected]>
1 parent 0b121fd commit 2b018d5

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

drivers/net/ppp/pppoe.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -570,7 +570,7 @@ static int pppoe_release(struct socket *sock)
570570

571571
po = pppox_sk(sk);
572572

573-
if (sk->sk_state & (PPPOX_CONNECTED | PPPOX_BOUND)) {
573+
if (sk->sk_state & (PPPOX_CONNECTED | PPPOX_BOUND | PPPOX_ZOMBIE)) {
574574
dev_put(po->pppoe_dev);
575575
po->pppoe_dev = NULL;
576576
}

0 commit comments

Comments
 (0)