Message ID | 20240617-otx2-vlan-push-v1-1-5cf20a70570e@kernel.org (mailing list archive) |
---|---|
State | Accepted |
Commit | b95a4afe2defd6f46891985f9436a568cd35a31c |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net] octeontx2-pf: Add error handling to VLAN unoffload handling | expand |
Hello: This patch was applied to netdev/net.git (main) by David S. Miller <davem@davemloft.net>: On Mon, 17 Jun 2024 17:50:26 +0100 you wrote: > otx2_sq_append_skb makes used of __vlan_hwaccel_push_inside() > to unoffload VLANs - push them from skb meta data into skb data. > However, it omitts a check for __vlan_hwaccel_push_inside() > returning NULL. > > Found by inspection based on [1] and [2]. > Compile tested only. > > [...] Here is the summary with links: - [net] octeontx2-pf: Add error handling to VLAN unoffload handling https://git.kernel.org/netdev/net/c/b95a4afe2def You are awesome, thank you!
diff --git a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c index a16e9f244117..929b4eac25d9 100644 --- a/drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c +++ b/drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c @@ -1174,8 +1174,11 @@ bool otx2_sq_append_skb(struct net_device *netdev, struct otx2_snd_queue *sq, if (skb_shinfo(skb)->gso_size && !is_hw_tso_supported(pfvf, skb)) { /* Insert vlan tag before giving pkt to tso */ - if (skb_vlan_tag_present(skb)) + if (skb_vlan_tag_present(skb)) { skb = __vlan_hwaccel_push_inside(skb); + if (!skb) + return true; + } otx2_sq_append_tso(pfvf, sq, skb, qidx); return true; }
otx2_sq_append_skb makes used of __vlan_hwaccel_push_inside() to unoffload VLANs - push them from skb meta data into skb data. However, it omitts a check for __vlan_hwaccel_push_inside() returning NULL. Found by inspection based on [1] and [2]. Compile tested only. [1] Re: [PATCH net-next v1] net: stmmac: Enable TSO on VLANs https://lore.kernel.org/all/ZmrN2W8Fye450TKs@shell.armlinux.org.uk/ [2] Re: [PATCH net-next v2] net: stmmac: Enable TSO on VLANs https://lore.kernel.org/all/CANn89i+11L5=tKsa7V7Aeyxaj6nYGRwy35PAbCRYJ73G+b25sg@mail.gmail.com/ Fixes: fd9d7859db6c ("octeontx2-pf: Implement ingress/egress VLAN offload") Signed-off-by: Simon Horman <horms@kernel.org> --- I audited callers of __vlan_hwaccel_push_inside in net and this appears to be the only one that needs this fix. --- drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)