lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220125095331.768dcc49@kicinski-fedora-PC1C0HJN.hsd1.ca.comcast.net>
Date:   Tue, 25 Jan 2022 09:53:31 -0800
From:   Jakub Kicinski <kuba@...nel.org>
To:     davem@...emloft.net
Cc:     edumazet@...gle.com, dsahern@...il.com, pabeni@...hat.com,
        herbert@...dor.apana.org.au, netdev@...r.kernel.org
Subject: Re: [PATCH net-next v2] ipv6: gro: flush instead of assuming
 different flows on hop_limit mismatch

On Mon, 24 Jan 2022 20:44:44 -0800 Jakub Kicinski wrote:
> IPv6 GRO considers packets to belong to different flows when their
> hop_limit is different. This seems counter-intuitive, the flow is
> the same. hop_limit may vary because of various bugs or hacks but
> that doesn't mean it's okay for GRO to reorder packets.
> 
> Practical impact of this problem on overall TCP performance
> is unclear, but TCP itself detects this reordering and bumps
> TCPSACKReorder resulting in user complaints.
> 
> Eric warns that there may be performance regressions in setups
> which do packet spraying across links with similar RTT but different
> hop count. To be safe let's target -next and not treat this
> as a fix. If the packet spraying is using flow label there should
> be no difference in behavior as flow label is checked first.
> 
> Note that the code plays an easy to miss trick by upcasting next_hdr
> to a u16 pointer and compares next_hdr and hop_limit in one go.
> 
> Signed-off-by: Jakub Kicinski <kuba@...nel.org>
> --
> v2: resend for -next with the sparse false-positive addressed

In net-next now: 6fc2f3832d36 ("ipv6: gro: flush instead of assuming
different flows on hop_limit mismatch")

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ