diff options
author | Eric Dumazet <edumazet@google.com> | 2022-01-31 10:26:03 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-02-08 18:23:12 +0100 |
commit | 0a70f118475e037732557796accd0878a00fc25a (patch) | |
tree | 267be30de634928f94569584d9802c7a29d0951c /drivers/net | |
parent | 8070f13e8f938d0160ac6305364c460b8981837a (diff) | |
download | linux-stable-0a70f118475e037732557796accd0878a00fc25a.tar.gz linux-stable-0a70f118475e037732557796accd0878a00fc25a.tar.bz2 linux-stable-0a70f118475e037732557796accd0878a00fc25a.zip |
tcp: fix possible socket leaks in internal pacing mode
This patch is addressing an issue in stable linux-4.19 only.
In linux-4.20, TCP stack adopted EDT (Earliest Departure
Time) model and this issue was incidentally fixed.
Issue at hand was an extra sock_hold() from tcp_internal_pacing()
in paths not using tcp_xmit_retransmit_queue()
Jason Xing reported this leak and provided a patch stopping
the extra sock_hold() to happen.
This patch is more complete and makes sure to avoid
unnecessary extra delays, by reprogramming the high
resolution timer.
Fixes: 73a6bab5aa2a ("tcp: switch pacing timer to softirq based hrtimer")
Reference: https://lore.kernel.org/all/CANn89i+7-wE4xr5D9DpH+N-xkL1SB8oVghCKgz+CT5eG1ODQhA@mail.gmail.com/
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Jason Xing <kerneljasonxing@gmail.com>
Reported-by: Zhang Changzhong <zhangchangzhong@huawei.com>
Cc: liweishi <liweishi@kuaishou.com>
Cc: Shujin Li <lishujin@kuaishou.com>
Cc: Neal Cardwell <ncardwell@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/net')
0 files changed, 0 insertions, 0 deletions