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 for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20200324.161932.2119088651104512505.davem@davemloft.net>
Date:   Tue, 24 Mar 2020 16:19:32 -0700 (PDT)
From:   David Miller <davem@...emloft.net>
To:     olteanv@...il.com
Cc:     netdev@...r.kernel.org, andrew@...n.ch, f.fainelli@...il.com,
        vivien.didelot@...il.com
Subject: Re: [PATCH net] net: dsa: tag_8021q: replace
 dsa_8021q_remove_header with __skb_vlan_pop

From: Vladimir Oltean <olteanv@...il.com>
Date: Tue, 24 Mar 2020 11:45:34 +0200

> From: Vladimir Oltean <vladimir.oltean@....com>
> 
> Not only did this wheel did not need reinventing, but there is also
> an issue with it: It doesn't remove the VLAN header in a way that
> preserves the L2 payload checksum when that is being provided by the DSA
> master hw.  It should recalculate checksum both for the push, before
> removing the header, and for the pull afterwards. But the current
> implementation is quite dizzying, with pulls followed immediately
> afterwards by pushes, the memmove is done before the push, etc.  This
> makes a DSA master with RX checksumming offload to print stack traces
> with the infamous 'hw csum failure' message.
> 
> So remove the dsa_8021q_remove_header function and replace it with
> something that actually works with inet checksumming.
> 
> Fixes: d461933638ae ("net: dsa: tag_8021q: Create helper function for removing VLAN header")
> Signed-off-by: Vladimir Oltean <vladimir.oltean@....com>

Applied and queued up for -stable.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ