Eric Dumazet 04309b5f5d raw: convert raw sockets to RCU
[ Upstream commit 0daf07e527095e64ee8927ce297ab626643e9f51 ]

Using rwlock in networking code is extremely risky.
writers can starve if enough readers are constantly
grabing the rwlock.

I thought rwlock were at fault and sent this patch:

https://lkml.org/lkml/2022/6/17/272

But Peter and Linus essentially told me rwlock had to be unfair.

We need to get rid of rwlock in networking code.

Without this fix, following script triggers soft lockups:

for i in {1..48}
do
 ping -f -n -q 127.0.0.1 &
 sleep 0.1
done

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-08-17 15:14:31 +02:00
..
2022-02-25 09:36:06 +01:00
2022-08-17 15:14:31 +02:00
2022-08-17 15:14:31 +02:00
2022-05-25 12:22:58 -07:00
2022-04-07 21:06:41 -07:00
2022-05-24 12:40:28 -03:00
2022-07-02 11:20:56 -07:00
2022-05-28 11:39:01 -07:00
2022-05-10 11:59:22 +02:00
2022-03-03 09:55:28 +00:00