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: <a51a5f27-6f84-450e-a1c5-233a9d4af12a@gin.de>
Date: Fri, 27 Oct 2023 11:12:03 +0200
From: Daniel Klauer <daniel.klauer@....de>
To: Ioana Ciornei <ioana.ciornei@....com>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: [bug] dpaa2-eth: "Wrong SWA type" and null deref in
 dpaa2_eth_free_tx_fd()

On 13.10.23 17:52, Ioana Ciornei wrote:
> Thanks for the test program! I was able to reproduce the issue fairly easily.
> 
> I still do not know the root cause but it seems to always happen with
> frames which are not 64 bytes aligned. I am afraid that the memory is
> somehow corrupted between Tx and Tx conf.
> 
> The driver already has a PTR_ALIGN call in dpaa2_eth_build_single_fd()
> but if there is not enough space in the skb's headroom then it will just
> go ahead without it.
> 
> Attached you will find 2 patches which make the 64 bytes alignment a
> must. With these patches applied onto net-next I do not see the issue
> anymore.
> 
> Could you please also test on your side?

After applying the two patches, the test program runs without crashing.
The "wrong SWA type" warning is gone too. As before I've tested this with
our v6.1 and v6.5 kernels. Thanks!

> 
> In the meantime, I will search internally for some more information on
> the Tx alignment restrictions in DPAA2 and whether or not they are only
> "nice to have" as the comment below suggests.
> 
>         /* If there's enough room to align the FD address, do it.
>          * It will help hardware optimize accesses.
>          */
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ