diff options
Diffstat (limited to 'include/linux/if_vlan.h')
| -rw-r--r-- | include/linux/if_vlan.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h index eef0876d8307..ab2740832742 100644 --- a/include/linux/if_vlan.h +++ b/include/linux/if_vlan.h | |||
| @@ -23,8 +23,8 @@ struct vlan_collection; | |||
| 23 | struct vlan_dev_info; | 23 | struct vlan_dev_info; |
| 24 | struct hlist_node; | 24 | struct hlist_node; |
| 25 | 25 | ||
| 26 | #include <linux/proc_fs.h> /* for proc_dir_entry */ | ||
| 27 | #include <linux/netdevice.h> | 26 | #include <linux/netdevice.h> |
| 27 | #include <linux/etherdevice.h> | ||
| 28 | 28 | ||
| 29 | #define VLAN_HLEN 4 /* The additional bytes (on top of the Ethernet header) | 29 | #define VLAN_HLEN 4 /* The additional bytes (on top of the Ethernet header) |
| 30 | * that VLAN requires. | 30 | * that VLAN requires. |
| @@ -155,6 +155,11 @@ static inline int __vlan_hwaccel_rx(struct sk_buff *skb, | |||
| 155 | { | 155 | { |
| 156 | struct net_device_stats *stats; | 156 | struct net_device_stats *stats; |
| 157 | 157 | ||
| 158 | if (skb_bond_should_drop(skb)) { | ||
| 159 | dev_kfree_skb_any(skb); | ||
| 160 | return NET_RX_DROP; | ||
| 161 | } | ||
| 162 | |||
| 158 | skb->dev = grp->vlan_devices[vlan_tag & VLAN_VID_MASK]; | 163 | skb->dev = grp->vlan_devices[vlan_tag & VLAN_VID_MASK]; |
| 159 | if (skb->dev == NULL) { | 164 | if (skb->dev == NULL) { |
| 160 | dev_kfree_skb_any(skb); | 165 | dev_kfree_skb_any(skb); |
| @@ -185,7 +190,8 @@ static inline int __vlan_hwaccel_rx(struct sk_buff *skb, | |||
| 185 | * This allows the VLAN to have a different MAC than the underlying | 190 | * This allows the VLAN to have a different MAC than the underlying |
| 186 | * device, and still route correctly. | 191 | * device, and still route correctly. |
| 187 | */ | 192 | */ |
| 188 | if (!memcmp(eth_hdr(skb)->h_dest, skb->dev->dev_addr, ETH_ALEN)) | 193 | if (!compare_ether_addr(eth_hdr(skb)->h_dest, |
| 194 | skb->dev->dev_addr)) | ||
| 189 | skb->pkt_type = PACKET_HOST; | 195 | skb->pkt_type = PACKET_HOST; |
| 190 | break; | 196 | break; |
| 191 | }; | 197 | }; |
