WSL2-Linux-Kernel/include
Jakub Kicinski f17d21ea73 tls: fix race between async notify and socket close
commit aec7961916f3f9e88766e2688992da6980f11b8d upstream.

The submitting thread (one which called recvmsg/sendmsg)
may exit as soon as the async crypto handler calls complete()
so any code past that point risks touching already freed data.

Try to avoid the locking and extra flags altogether.
Have the main thread hold an extra reference, this way
we can depend solely on the atomic ref counter for
synchronization.

Don't futz with reiniting the completion, either, we are now
tightly controlling when completion fires.

Reported-by: valis <sec@valis.email>
Fixes: 0cada33241 ("net/tls: fix race condition causing kernel panic")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
[v5.15: fixed contextual conflicts in struct tls_sw_context_rx and func
init_ctx_rx; replaced DEBUG_NET_WARN_ON_ONCE with BUILD_BUG_ON_INVALID
since they're equivalent when DEBUG_NET is not defined]
Cc: <stable@vger.kernel.org> # 5.15
Signed-off-by: Shaoying Xu <shaoyi@amazon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-25 16:20:17 +02:00
..
acpi
asm-generic
clocksource
crypto
drm drm-print: add drm_dbg_driver to improve namespace symmetry 2024-05-02 16:24:47 +02:00
dt-bindings
keys
kunit
kvm
linux Reapply "drm/qxl: simplify qxl_fence_wait" 2024-05-17 11:51:02 +02:00
math-emu
media
memory
misc
net tls: fix race between async notify and socket close 2024-05-25 16:20:17 +02:00
pcmcia
ras
rdma
scsi
soc
sound
target
trace SUNRPC: Fix rpcgss_context trace event acceptor field 2024-04-27 17:05:23 +02:00
uapi Input: allocate keycode for Display refresh rate toggle 2024-04-13 13:01:46 +02:00
vdso
video
xen