Commit 78a93c31 authored by Yuanjun Gong's avatar Yuanjun Gong Committed by David S. Miller
Browse files

drivers: net: fix return value check in emac_tso_csum()



in emac_tso_csum(), return an error code if an unexpected value
is returned by pskb_trim().

Signed-off-by: default avatarYuanjun Gong <ruc_gongyuanjun@163.com>
Reviewed-by: default avatarKuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 4258faa1
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1260,8 +1260,11 @@ static int emac_tso_csum(struct emac_adapter *adpt,
		if (skb->protocol == htons(ETH_P_IP)) {
			u32 pkt_len = ((unsigned char *)ip_hdr(skb) - skb->data)
				       + ntohs(ip_hdr(skb)->tot_len);
			if (skb->len > pkt_len)
				pskb_trim(skb, pkt_len);
			if (skb->len > pkt_len) {
				ret = pskb_trim(skb, pkt_len);
				if (unlikely(ret))
					return ret;
			}
		}

		hdr_len = skb_tcp_all_headers(skb);