Subject: Re: WARN trace - skb_warn_bad_offload - vxlan - large udp packet - udp checksum disabled

From: Hannes Frederic Sowa <[email-masked]>
Date: Thu, 7 Jan 2016 03:36:27 +0100

On 15.12.2015 02:35, Nelson, Shannon wrote:
> Using a slightly modified version of udpspam (see diff below - hopefully not mangled by corporate email servers), where I set the SO_NO_CHECK socket option and can specify a large buffer size, I can reliably get the following WARN trace.  I have reproduced this on both ixgbe and i40e drivers using "udpspam-no-check <target-ip> 6000".
>
> It looks to me like this is in the Tx path before we get to the actual NIC drivers, but I may be wrong.

Does UFO offloading on the tunnel interface fix this error?

ethtool -K vxlan ufo off

If yes we can't feed SO_NO_CHECK udp packets into UFO as gso/ufo 
requires CHECKSUM_PARTIAL (or add some more logic into the skb or query 
socket status from skb_gso_segment).

Thanks,
Hannes