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] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACRpkdbannQiJwBZtx-_qkgG7vOFv47bqC-oMiTGqXwWsymPvA@mail.gmail.com>
Date: Thu, 9 May 2024 19:50:46 +0200
From: Linus Walleij <linus.walleij@...aro.org>
To: Eric Dumazet <edumazet@...gle.com>
Cc: Hans Ulli Kroll <ulli.kroll@...glemail.com>, "David S. Miller" <davem@...emloft.net>, 
	Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, netdev@...r.kernel.org
Subject: Re: [PATCH net-next 1/2] net: ethernet: cortina: Restore TSO support

On Thu, May 9, 2024 at 5:10 PM Eric Dumazet <edumazet@...gle.com> wrote:

> > +       if (mss >= ETH_FRAME_LEN) {
>
> Also this last check makes little sense, because normal MTU/MSS would
> trigger this condition.
>
> Forcing software checksumming would make TSO useless.
>
> I suspect this code is there because of the old buggy TSO
> implementation of this driver.

I think you're right, when the packets are "pure" TCP let's say.
The TSO should just split those.

I think the check is needed for e.g. UDP with large payload
(such as ping -s 9000....) or those custom packets with funny extra bytes
and ethertype that the DSA switch uses. We determined that the HW
IP checksummer actually get hiccups when the frame is larger than
1518 bytes  so that is why this bypass path is needed.

I think I will try to make one "clean path" for just pure TCP and no
funky business, and an exceptional path for any other package.

Yours,
Linus Walleij

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ