[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL+tcoDntffvPAMKM1vCxCuLhOt6bPgcJ=40Pq4eRqwtKOU20w@mail.gmail.com>
Date: Thu, 18 Apr 2024 11:24:37 +0800
From: Jason Xing <kerneljasonxing@...il.com>
To: Eric Dumazet <edumazet@...gle.com>
Cc: "David S . Miller" <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>,
Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org,
Neal Cardwell <ncardwell@...gle.com>, Dragos Tatulea <dtatulea@...dia.com>, eric.dumazet@...il.com
Subject: Re: [PATCH net-next 2/2] tcp: no longer abort SYN_SENT when receiving
some ICMP (II)
On Thu, Apr 18, 2024 at 12:59 AM Eric Dumazet <edumazet@...gle.com> wrote:
>
> Notes:
>
> - A prior version of this patch in commit
> 0a8de364ff7a ("tcp: no longer abort SYN_SENT when
> receiving some ICMP") had to be reverted.
>
> - We found the root cause, and fixed it in prior patch
> in the series.
>
> - Many thanks to Dragos Tatulea !
>
> Currently, non fatal ICMP messages received on behalf
> of SYN_SENT sockets do call tcp_ld_RTO_revert()
> to implement RFC 6069, but immediately call tcp_done(),
> thus aborting the connect() attempt.
>
> This violates RFC 1122 following requirement:
>
> 4.2.3.9 ICMP Messages
> ...
> o Destination Unreachable -- codes 0, 1, 5
>
> Since these Unreachable messages indicate soft error
> conditions, TCP MUST NOT abort the connection, and it
> SHOULD make the information available to the
> application.
>
> This patch makes sure non 'fatal' ICMP[v6] messages do not
> abort the connection attempt.
>
> It enables RFC 6069 for SYN_SENT sockets as a result.
>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
> Cc: Neal Cardwell <ncardwell@...gle.com>
> Tested-by: Dragos Tatulea <dtatulea@...dia.com>
Reviewed-by: Jason Xing <kerneljasonxing@...il.com>
Finally!!
Powered by blists - more mailing lists