Messages in this thread |  | | Subject | Re: [PATCH 1/2] ixgbe: fix gso type | From | Eric Dumazet <> | Date | Wed, 06 Feb 2013 19:21:32 -0800 |
| |
On Thu, 2013-02-07 at 01:02 +0200, Michael S. Tsirkin wrote: > ixgbe set gso_size but not gso_type. This leads to > crashes in macvtap. > > Signed-off-by: Michael S. Tsirkin <mst@redhat.com> > --- > > I tested that this fixes the crash for me. I am told on ixgbe LRO only > triggers with TCP so checking protocol should be enough? > > drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c > index 396e280..9d01673 100644 > --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c > +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c > @@ -1399,6 +1399,10 @@ static void ixgbe_set_rsc_gso_size(struct ixgbe_ring *ring, > /* set gso_size to avoid messing up TCP MSS */ > skb_shinfo(skb)->gso_size = DIV_ROUND_UP((skb->len - hdr_len), > IXGBE_CB(skb)->append_cnt); > + if (skb->protocol == ETH_P_IPV6)
Same problem here (skb->protocol == htons(ETH_P_IPV6))
> + skb_shinfo(skb)->gso_type = SKB_GSO_TCPV6; > + else > + skb_shinfo(skb)->gso_type = SKB_GSO_TCPV4; > } >
|  |