diff options
Diffstat (limited to 'net/core/sock_map.c')
| -rw-r--r-- | net/core/sock_map.c | 3 | 
1 files changed, 2 insertions, 1 deletions
diff --git a/net/core/sock_map.c b/net/core/sock_map.c index 7c189c2e2fbf..00afb66cd095 100644 --- a/net/core/sock_map.c +++ b/net/core/sock_map.c @@ -1644,9 +1644,10 @@ void sock_map_close(struct sock *sk, long timeout)  		rcu_read_unlock();  		sk_psock_stop(psock);  		release_sock(sk); -		cancel_work_sync(&psock->work); +		cancel_delayed_work_sync(&psock->work);  		sk_psock_put(sk, psock);  	} +  	/* Make sure we do not recurse. This is a bug.  	 * Leak the socket instead of crashing on a stack overflow.  	 */  | 
