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

Commit 74843851 authored by Yuanjun Gong's avatar Yuanjun Gong Committed by Greg Kroah-Hartman
Browse files

benet: fix return value check in be_lancer_xmit_workarounds()



[ Upstream commit 5c85f7065718a949902b238a6abd8fc907c5d3e0 ]

in be_lancer_xmit_workarounds(), it should go to label 'tx_drop'
if an unexpected value is returned by pskb_trim().

Fixes: 93040ae5 ("be2net: Fix to trim skb for padded vlan packets to workaround an ASIC Bug")
Signed-off-by: default avatarYuanjun Gong <ruc_gongyuanjun@163.com>
Link: https://lore.kernel.org/r/20230725032726.15002-1-ruc_gongyuanjun@163.com


Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
parent 07d9723c
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1140,7 +1140,8 @@ static struct sk_buff *be_lancer_xmit_workarounds(struct be_adapter *adapter,
	    (lancer_chip(adapter) || BE3_chip(adapter) ||
	     skb_vlan_tag_present(skb)) && is_ipv4_pkt(skb)) {
		ip = (struct iphdr *)ip_hdr(skb);
		pskb_trim(skb, eth_hdr_len + ntohs(ip->tot_len));
		if (unlikely(pskb_trim(skb, eth_hdr_len + ntohs(ip->tot_len))))
			goto tx_drop;
	}

	/* If vlan tag is already inlined in the packet, skip HW VLAN