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 <m...@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;
>  }
>  

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to