Files
linux/include/net
Eric Dumazet e6ddc2c3d8 tcp: do not release socket ownership in tcp_close()
commit 8873c064d1 upstream.

syzkaller was able to hit the WARN_ON(sock_owned_by_user(sk));
in tcp_close()

While a socket is being closed, it is very possible other
threads find it in rtnetlink dump.

tcp_get_info() will acquire the socket lock for a short amount
of time (slow = lock_sock_fast(sk)/unlock_sock_fast(sk, slow);),
enough to trigger the warning.

Fixes: 67db3e4bfb ("tcp: no longer hold ehash lock while calling tcp_get_info()")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: syzbot <syzkaller@googlegroups.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-12-01 09:42:51 +01:00
..
2017-07-11 06:08:58 -04:00
2018-09-29 03:06:01 -07:00
2018-10-18 09:16:17 +02:00
2016-07-08 12:20:57 +02:00
2017-08-31 14:42:19 -07:00
2017-06-15 12:12:40 -04:00
2018-09-19 22:43:46 +02:00
2018-09-19 22:43:46 +02:00
2016-08-17 19:36:23 -04:00
2016-10-03 02:00:22 -04:00
2018-05-16 10:10:23 +02:00
2016-07-08 12:20:57 +02:00
2018-02-25 11:07:59 +01:00
2018-09-15 09:45:29 +02:00