Messages in this thread | | | From | Jason Xing <> | Date | Fri, 30 Apr 2021 18:51:25 +0800 | Subject | Re: [PATCH v2 4.19] tcp: fix TCP socks unreleased in BBR mode |
| |
On Tue, Aug 11, 2020 at 11:33 PM Eric Dumazet <eric.dumazet@gmail.com> wrote: > > > > On 8/11/20 3:37 AM, Jason Xing wrote: > > Hi everyone, > > > > Could anyone take a look at this issue? I believe it is of high-importance. > > Though Eric gave the proper patch a few months ago, the stable branch > > still hasn't applied or merged this fix. It seems this patch was > > forgotten :( > > > Sure, I'll take care of this shortly.
Hi Eric,
It has been a very long time. It seems this issue was left behind and almost forgotten, I think. Could you mind taking some time to fix this up if you still consider it as important? Our team has been waiting for your patchset. Afterall, it once had a huge impact on our thousands and hundreds of machines.
thanks, Jason
> > Thanks. > > > > > Thanks, > > Jason > > > > On Thu, Jun 4, 2020 at 9:47 PM Jason Xing <kerneljasonxing@gmail.com> wrote: > >> > >> On Thu, Jun 4, 2020 at 9:10 PM Eric Dumazet <edumazet@google.com> wrote: > >>> > >>> On Thu, Jun 4, 2020 at 2:01 AM <kerneljasonxing@gmail.com> wrote: > >>>> > >>>> From: Jason Xing <kerneljasonxing@gmail.com> > >>>> > >>>> When using BBR mode, too many tcp socks cannot be released because of > >>>> duplicate use of the sock_hold() in the manner of tcp_internal_pacing() > >>>> when RTO happens. Therefore, this situation maddly increases the slab > >>>> memory and then constantly triggers the OOM until crash. > >>>> > >>>> Besides, in addition to BBR mode, if some mode applies pacing function, > >>>> it could trigger what we've discussed above, > >>>> > >>>> Reproduce procedure: > >>>> 0) cat /proc/slabinfo | grep TCP > >>>> 1) switch net.ipv4.tcp_congestion_control to bbr > >>>> 2) using wrk tool something like that to send packages > >>>> 3) using tc to increase the delay and loss to simulate the RTO case. > >>>> 4) cat /proc/slabinfo | grep TCP > >>>> 5) kill the wrk command and observe the number of objects and slabs in > >>>> TCP. > >>>> 6) at last, you could notice that the number would not decrease. > >>>> > >>>> v2: extend the timer which could cover all those related potential risks > >>>> (suggested by Eric Dumazet and Neal Cardwell) > >>>> > >>>> Signed-off-by: Jason Xing <kerneljasonxing@gmail.com> > >>>> Signed-off-by: liweishi <liweishi@kuaishou.com> > >>>> Signed-off-by: Shujin Li <lishujin@kuaishou.com> > >>> > >>> That is not how things work really. > >>> > >>> I will submit this properly so that stable teams do not have to guess > >>> how to backport this to various kernels. > >>> > >>> Changelog is misleading, this has nothing to do with BBR, we need to be precise. > >>> > >> > >> Thanks for your help. I can finally apply this patch into my kernel. > >> > >> Looking forward to your patchset :) > >> > >> Jason > >> > >>> Thank you.
| |