mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
net: dsa: tag_ocelot: do not rely on skb_mac_header() for VLAN xmit
[ Upstream commiteabb1494c9] skb_mac_header() will no longer be available in the TX path when reverting commit6d1ccff627("net: reset mac header in dev_start_xmit()"). As preparation for that, let's use skb_vlan_eth_hdr() to get to the VLAN header instead, which assumes it's located at skb->data (assumption which holds true here). Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Reviewed-by: Eric Dumazet <edumazet@google.com> Reviewed-by: Simon Horman <simon.horman@corigine.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Stable-dep-of: 67c3ca2c5cfe ("net: mscc: ocelot: use ocelot_xmit_get_vlan_info() also for FDMA and register injection") Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a23c49a5ea
commit
4aae448651
@@ -22,7 +22,7 @@ static void ocelot_xmit_get_vlan_info(struct sk_buff *skb, struct dsa_port *dp,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
hdr = (struct vlan_ethhdr *)skb_mac_header(skb);
|
hdr = skb_vlan_eth_hdr(skb);
|
||||||
br_vlan_get_proto(br, &proto);
|
br_vlan_get_proto(br, &proto);
|
||||||
|
|
||||||
if (ntohs(hdr->h_vlan_proto) == proto) {
|
if (ntohs(hdr->h_vlan_proto) == proto) {
|
||||||
|
|||||||
Reference in New Issue
Block a user