Re: 4.4.1 skb_warn_bad_offload+0xc5/0x110

From: Wakko Warner
Date: Tue Feb 23 2016 - 20:46:58 EST


Please keep me in CC.

Wakko Warner wrote:
>
> Hannes Frederic Sowa wrote:
> > [full-quote for netdev]
> >
> > Hello,
> >
> > On 16.02.2016 01:08, Wakko Warner wrote:
> > >I've been seeing the following on some of my VMs ran under qemu. The VMs do
> > >not have internet connectivity. This happened when some files were accessed
> > >via NFS to another VM (NOTE: Both VMs throw these warnings. Both VMs are
> > >running the exact same kernel). The host is also throwing these warnings
> > >and is also 4.4.1, but not the same kernel build.
> > >
> > >The issue appears to have gone away if I issue the following on the guests
> > >and on the host (except br0 instead of eth0 on host)
> > >ethtool -K eth0 gso off gro off ufo off tso off
> > >
> > >On the host, br0 does not have any interfaces enslaved except for the
> > >interface for the VMs and also does not have an IPv4 address assigned.
> > >
>
> > Can you try the following patch?
> >
> > --- a/net/ipv4/ip_output.c
> > +++ b/net/ipv4/ip_output.c
> > @@ -1233,6 +1233,9 @@ ssize_t ip_append_page(struct sock *sk,
> > struct flowi4 *fl4, struct page *page,
> > if (!skb)
> > return -EINVAL;
> >
> > + if (skb->ip_summed != CHECKSUM_PARTIAL)
> > + return -EINVAL;
> > +
> > cork->length += size;
> > if ((size + skb->len > mtu) &&
> > (sk->sk_protocol == IPPROTO_UDP) &&
>
> Still received the warning. I saw it on the host and on one of the VMs.
> The VM in this case was an nfs server. The client did not receive the
> warning. I should mention that I'm using v3 and udp on the client for the
> mount options.
>
> I'm not sure if this change effected nfsd on one of the VMs, it isn't working
> at all on it.

I reverted back to the previous kernel for the VM only and the nfsd on the
one VM started working.

I should note that when I added this change, I only compiled the kernel and
copied the bzImage file. I did not recompile any modules nor copy the
system.map over.

--
Microsoft has beaten Volkswagen's world record. Volkswagen only created 22
million bugs.