[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CADVnQymo2h4dYqeZQm9y5qqHoD1qrht9adLeuakFXzcKV5hyFQ@mail.gmail.com>
Date: Sun, 1 Oct 2023 11:19:09 -0400
From: Neal Cardwell <ncardwell@...gle.com>
To: Xin Guo <guoxin0309@...il.com>
Cc: Neal Cardwell <ncardwell.sw@...il.com>, David Miller <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, Eric Dumazet <edumazet@...gle.com>, Netdev <netdev@...r.kernel.org>,
Yuchung Cheng <ycheng@...gle.com>
Subject: Re: [PATCH net 2/2] tcp: fix delayed ACKs for MSS boundary condition
On Thu, Sep 28, 2023 at 11:56 AM Xin Guo <guoxin0309@...il.com> wrote:
>
> Neal,
> thanks for your explanation,
> 1)when I read the patch, i cannot understood "if an app reads >1*MSS data",
> because in my view that "the app reads" mean that the copied data
> length from sk_receive_queue to user-space buffer
> in function tcp_recvmsg_locked(as example) when an app reads data from a socket,
> but for "tp->rcv_nxt - tp->rcv_wup > icsk->icsk_ack.rcv_mss ||"
> "tp->rcv_nxt - tp->rcv_wup" means that the received data length from
> last ack in the kernel for the sk,
> and not always the length of copied data to user-space buffer.
>
> 2) when we received two small packets(<1*MSS) in the kernel for the
> sk, the total length of the two packets may > 1*MSS.
Thanks for clarifying. Those are good points; the commit message could
and should be more precise when describing the existing logic in
tcp_cleanup_rbuf(). I have posted a v2 series with a more precise
commit message:
https://patchwork.kernel.org/project/netdevbpf/patch/20231001151239.1866845-2-ncardwell.sw@gmail.com/
best regards,
neal
Powered by blists - more mailing lists