Re: gso: Attempt to handle mega-GRO packets
From: Eric Dumazet <hidden>
Date: 2013-11-06 19:47:25
On Wed, 2013-11-06 at 22:39 +0800, Herbert Xu wrote:
In fact, we never relied on the frag_list having headers anyway so it's not hard to fix this. Still totally untested but at least this has a chance of handling the new virtio_net.
First try, machine doesn't crash, but things are not working. [ 433.232553] skbuff: skb_segment: illegal GSO fragment: 1514 1448 [ 433.340523] skbuff: skb_segment: illegal GSO fragment: 1514 1448skbuff: skb_segment: illegal GSO fragment: 1514 1448 [ 433.340578] skbuff: skb_segment: illegal GSO fragment: 1514 1448skbuff: skb_segment: illegal GSO fragment: 1514 1448 [ 433.340598] skbuff: skb_segment: illegal GSO fragment: 1514 1448skbuff: skb_segment: illegal GSO fragment: 1514 1448 [ 433.340620] skbuff: skb_segment: illegal GSO fragment: 1514 1448skbuff: skb_segment: illegal GSO fragment: 1514 1448 [ 433.340661] skbuff: skb_segment: illegal GSO fragment: 1514 1448<4>[ 438.313019] net_ratelimit: 141 callbacks suppressed To test this, I used a regular forwarding path between three hosts A ---> B ----> C I'll try a different way. The frag_list would contain a bunch of frags, that we logically add to the bunch of frags found in the first skb shared_info structure. Thanks