diff options
-rw-r--r-- | drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c index 6f82812d0fab..09aa310b6194 100644 --- a/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c +++ b/drivers/net/ethernet/qlogic/qlcnic/qlcnic_io.c | |||
@@ -986,8 +986,13 @@ qlcnic_process_lro(struct qlcnic_adapter *adapter, | |||
986 | th->seq = htonl(seq_number); | 986 | th->seq = htonl(seq_number); |
987 | length = skb->len; | 987 | length = skb->len; |
988 | 988 | ||
989 | if (adapter->flags & QLCNIC_FW_LRO_MSS_CAP) | 989 | if (adapter->flags & QLCNIC_FW_LRO_MSS_CAP) { |
990 | skb_shinfo(skb)->gso_size = qlcnic_get_lro_sts_mss(sts_data1); | 990 | skb_shinfo(skb)->gso_size = qlcnic_get_lro_sts_mss(sts_data1); |
991 | if (skb->protocol == htons(ETH_P_IPV6)) | ||
992 | skb_shinfo(skb)->gso_type = SKB_GSO_TCPV6; | ||
993 | else | ||
994 | skb_shinfo(skb)->gso_type = SKB_GSO_TCPV4; | ||
995 | } | ||
991 | 996 | ||
992 | if (vid != 0xffff) | 997 | if (vid != 0xffff) |
993 | __vlan_hwaccel_put_tag(skb, vid); | 998 | __vlan_hwaccel_put_tag(skb, vid); |