Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 27e24189 authored by Michael Chan's avatar Michael Chan Committed by David S. Miller
Browse files

bnxt_en: Don't treat single segment rx frames as GRO frames.



If hardware completes single segment rx frames, don't bother setting
up all the GRO related fields.  Pass the SKB up as a normal frame.

Reviewed-by: default avatarvasundhara volam <vvolam@broadcom.com>
Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 45019a18
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -856,8 +856,13 @@ static inline struct sk_buff *bnxt_gro_skb(struct bnxt_tpa_info *tpa_info,
	struct tcphdr *th;
	int payload_off, tcp_opt_len = 0;
	int len, nw_off;
	u16 segs;

	NAPI_GRO_CB(skb)->count = TPA_END_TPA_SEGS(tpa_end);
	segs = TPA_END_TPA_SEGS(tpa_end);
	if (segs == 1)
		return skb;

	NAPI_GRO_CB(skb)->count = segs;
	skb_shinfo(skb)->gso_size =
		le32_to_cpu(tpa_end1->rx_tpa_end_cmp_seg_len);
	skb_shinfo(skb)->gso_type = tpa_info->gso_type;