Messages in this thread | | | From | Neal Cardwell <> | Date | Mon, 28 Jun 2021 12:24:19 -0400 | Subject | Re: [PATCH] tcp: Do not reset the icsk_ca_initialized in tcp_init_transfer. |
| |
On Mon, Jun 28, 2021 at 12:18 PM Phi Nguyen <phind.uet@gmail.com> wrote: > > On 6/28/2021 10:52 PM, Eric Dumazet wrote: > > > Unfortunately this patch might break things. > > > > We keep changing this CC switching, with eBPF being mixed in the equation. > > > > I would suggest you find a Fixes: tag first, so that we can continue > > the discussion. > > > > Thank you. > > Thank for your feedback. I will resubmit it with a Fixes tag. > > Regard.
Thanks.
Can you also please provide a summary of the event sequence that triggers the bug? Based on your Reported-by tag, I guess this is based on the syzbot reproducer:
https://groups.google.com/g/syzkaller-bugs/c/VbHoSsBz0hk/m/cOxOoTgPCAAJ
but perhaps you can give a summary of the event sequence that causes the bug? Is it that the call:
setsockopt$inet_tcp_TCP_CONGESTION(r0, 0x6, 0xd, &(0x7f0000000000)='cdg\x00', 0x4)
initializes the CC and happens before the connection is established, and then when the connection is established, the line that sets: icsk->icsk_ca_initialized = 0; is incorrect, causing the CC to be initialized again without first calling the cleanup code that deallocates the CDG-allocated memory?
thanks, neal
| |