netdrv: don't truncate VLAN TCI with VLAN stripping

The vlan_hwaccel_{rx,receive_skb} functions expect the full TCI field
for priority mappings, don't truncate the upper 4 bits.

Signed-off-by: Patrick McHardy <kaber@trash.net>
Acked-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Patrick McHardy
2008-07-06 20:48:41 -07:00
committed by David S. Miller
parent 4b5a698ef4
commit 38b221957b
7 changed files with 11 additions and 18 deletions

View File

@@ -1510,7 +1510,7 @@ static int __netdev_rx(struct net_device *dev, int *quota)
if (debug > 4)
printk(KERN_DEBUG " netdev_rx() vlanid = %d\n", le16_to_cpu(desc->vlanid));
/* vlan_netdev_receive_skb() expects a packet with the VLAN tag stripped out */
vlan_netdev_receive_skb(skb, np->vlgrp, le16_to_cpu(desc->vlanid) & VLAN_VID_MASK);
vlan_netdev_receive_skb(skb, np->vlgrp, le16_to_cpu(desc->vlanid));
} else
#endif /* VLAN_SUPPORT */
netdev_receive_skb(skb);