Message ID | 1271549852.2802.37.camel@ibex |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
From: Andrew Hendry <andrew.hendry@gmail.com> Date: Sun, 18 Apr 2010 10:17:32 +1000 > > 1, An X25 program binds and listens > 2, calls arrive waiting to be accepted > 3, Program exits without accepting > 4, Sockets time out but don't get correctly cleaned up > 5, cat /proc/net/x25/socket shows the dead sockets with bad inode fields. > > This line borrowed from AX25 sets the dying socket so the timers clean up later. > > Signed-off-by: Andrew Hendry <andrew.hendry@gmail.com> Applied, thank you. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/x25/af_x25.c b/net/x25/af_x25.c index cbddd0c..36e84e1 100644 --- a/net/x25/af_x25.c +++ b/net/x25/af_x25.c @@ -402,6 +402,7 @@ static void __x25_destroy_socket(struct sock *sk) /* * Queue the unaccepted socket for death */ + skb->sk->sk_state = TCP_LISTEN; sock_set_flag(skb->sk, SOCK_DEAD); x25_start_heartbeat(skb->sk); x25_sk(skb->sk)->state = X25_STATE_0;
1, An X25 program binds and listens 2, calls arrive waiting to be accepted 3, Program exits without accepting 4, Sockets time out but don't get correctly cleaned up 5, cat /proc/net/x25/socket shows the dead sockets with bad inode fields. This line borrowed from AX25 sets the dying socket so the timers clean up later. Signed-off-by: Andrew Hendry <andrew.hendry@gmail.com> --- net/x25/af_x25.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)