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 PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sat, 3 Oct 2020 15:40:05 +0800 From: Xin Long <lucien.xin@...il.com> To: Marcelo Ricardo Leitner <marcelo.leitner@...il.com> Cc: network dev <netdev@...r.kernel.org>, linux-sctp@...r.kernel.org, Neil Horman <nhorman@...driver.com>, Michael Tuexen <tuexen@...muenster.de>, davem <davem@...emloft.net>, tom@...bertland.com Subject: Re: [PATCH net-next 03/15] udp: do checksum properly in skb_udp_tunnel_segment On Sat, Oct 3, 2020 at 12:04 PM Marcelo Ricardo Leitner <marcelo.leitner@...il.com> wrote: > > On Tue, Sep 29, 2020 at 09:48:55PM +0800, Xin Long wrote: > > This patch fixes two things: > > > > When skb->ip_summed == CHECKSUM_PARTIAL, skb_checksum_help() should be > > called do the checksum, instead of gso_make_checksum(), which is used > > to do the checksum for current proto after calling skb_segment(), not > > after the inner proto's gso_segment(). > > > > When offload_csum is disabled, the hardware will not do the checksum > > for the current proto, udp. So instead of calling gso_make_checksum(), > > it should calculate checksum for udp itself. > > Gotta say, this is odd. It is really flipping the two around. What > about other users of this function, did you test them too? Not yet, I couldn't found other cases to trigger this. But I think gso_make_checksum() is not correct to be used here, as it's trying to calculate the checksum for inner protocol instead of UDP's. It should be skb_checksum_help(), like on the xmit path. > > It makes sense to be, but would be nice if someone else could review > this. Fix the mail of Tom Herbert, and he is the right person to review this.
Powered by blists - more mailing lists