[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CALOAHbB0CQkXfi6Xt-S8u0jQNGpbwFN0aEQz4gxnrYr51Fmd+w@mail.gmail.com>
Date: Sun, 4 Nov 2018 09:27:34 +0800
From: Yafang Shao <laoar.shao@...il.com>
To: joe@...ches.com
Cc: David Miller <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
netdev <netdev@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] tcp: do not update snd_una if it is same with ack_seq
On Sun, Nov 4, 2018 at 1:04 AM Joe Perches <joe@...ches.com> wrote:
>
> On Sun, 2018-11-04 at 00:54 +0800, Yafang Shao wrote:
> > In the slow path, TCP_SKB_SB(skb)->ack_seq may be same with tp->snd_una,
> > and under this condition we don't need to update the snd_una.
> >
> > Furthermore, tcp_ack_update_window() is only called in slow path,
> > so introducing this check won't affect the fast path processing.
> []
> > diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
> []
> > @@ -3610,7 +3611,7 @@ static int tcp_ack(struct sock *sk, const struct sk_buff *skb, int flag)
> > if (flag & FLAG_UPDATE_TS_RECENT)
> > tcp_replace_ts_recent(tp, TCP_SKB_CB(skb)->seq);
> >
> > - if (!(flag & FLAG_SLOWPATH) && after(ack, prior_snd_una)) {
> > + if (!(flag & FLAG_SLOWPATH) && flag & FLAG_SND_UNA_ADVANCED) {
>
> stylistic nit:
>
> While the precedence is correct in any case,
> perhaps adding parentheses around
> flag & FLAG_SND_UNA_ADVANCED
> would make it more obvious.
>
Sure. will change it.
Thanks
Yafang
Powered by blists - more mailing lists