tcp: tcp_check_req() can be called from process context
authorEric Dumazet <edumazet@google.com>
Mon, 27 Feb 2023 08:33:36 +0000 (08:33 +0000)
committerJakub Kicinski <kuba@kernel.org>
Mon, 27 Feb 2023 19:59:29 +0000 (11:59 -0800)
commit580f98cc33a260bb8c6a39ae2921b29586b84fdf
treeef2eab5f3e3a3cd60992ce51a8b8abff49e60ab9
parent972074ea88402e9b1b29c3a8d3d6d1aadaff624e
tcp: tcp_check_req() can be called from process context

This is a follow up of commit 0a375c822497 ("tcp: tcp_rtx_synack()
can be called from process context").

Frederick Lawler reported another "__this_cpu_add() in preemptible"
warning caused by the same reason.

In my former patch I took care of tcp_rtx_synack()
but forgot that tcp_check_req() also contained some SNMP updates.

Note that some parts of tcp_check_req() always run in BH context,
I added a comment to clarify this.

Fixes: 8336886f786f ("tcp: TCP Fast Open Server - support TFO listeners")
Link: https://lore.kernel.org/netdev/8cd33923-a21d-397c-e46b-2a068c287b03@cloudflare.com/T/
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Frederick Lawler <fred@cloudflare.com>
Tested-by: Frederick Lawler <fred@cloudflare.com>
Link: https://lore.kernel.org/r/20230227083336.4153089-1-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv4/tcp_minisocks.c