diff options
| author | Jakub Kicinski <[email protected]> | 2023-03-01 00:28:57 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2023-03-02 04:32:36 +0000 |
| commit | f3221361dc85d4de22586ce8441ec2c67b454f5d (patch) | |
| tree | b4dbd98afdac7a8e2c5a1bc7d1f168962d6a357f /net/unix/af_unix.c | |
| parent | net: tls: fix possible race condition between do_tls_getsockopt_conf() and do... (diff) | |
| download | kernel-f3221361dc85d4de22586ce8441ec2c67b454f5d.tar.gz kernel-f3221361dc85d4de22586ce8441ec2c67b454f5d.zip | |
net: tls: avoid hanging tasks on the tx_lock
syzbot sent a hung task report and Eric explains that adversarial
receiver may keep RWIN at 0 for a long time, so we are not guaranteed
to make forward progress. Thread which took tx_lock and went to sleep
may not release tx_lock for hours. Use interruptible sleep where
possible and reschedule the work if it can't take the lock.
Testing: existing selftest passes
Reported-by: [email protected]
Fixes: 79ffe6087e91 ("net/tls: add a TX lock")
Link: https://lore.kernel.org/all/[email protected]/
Cc: [email protected] # wait 4 weeks
Reviewed-by: Eric Dumazet <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions
