From 29ec3dbc71ccee3344d4946723814fb82fbf69cd Mon Sep 17 00:00:00 2001 From: Eric Dumazet Date: Thu, 30 Sep 2010 02:16:44 +0000 Subject: [PATCH] --- yaml --- r: 211242 b: refs/heads/master c: 173e79fb70a98b5b223f8dc09c22990d777bdd78 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/8021q/vlan_core.c | 14 ++++++++++---- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index 78e865f25de1..5a532181d0d3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 92629195314d8adefabeb78b13d681ad1c01e778 +refs/heads/master: 173e79fb70a98b5b223f8dc09c22990d777bdd78 diff --git a/trunk/net/8021q/vlan_core.c b/trunk/net/8021q/vlan_core.c index 01ddb0472f86..0eb96f7e44be 100644 --- a/trunk/net/8021q/vlan_core.c +++ b/trunk/net/8021q/vlan_core.c @@ -24,8 +24,11 @@ int __vlan_hwaccel_rx(struct sk_buff *skb, struct vlan_group *grp, if (vlan_dev) skb->dev = vlan_dev; - else if (vlan_id) - goto drop; + else if (vlan_id) { + if (!(skb->dev->flags & IFF_PROMISC)) + goto drop; + skb->pkt_type = PACKET_OTHERHOST; + } return (polling ? netif_receive_skb(skb) : netif_rx(skb)); @@ -102,8 +105,11 @@ vlan_gro_common(struct napi_struct *napi, struct vlan_group *grp, if (vlan_dev) skb->dev = vlan_dev; - else if (vlan_id) - goto drop; + else if (vlan_id) { + if (!(skb->dev->flags & IFF_PROMISC)) + goto drop; + skb->pkt_type = PACKET_OTHERHOST; + } for (p = napi->gro_list; p; p = p->next) { NAPI_GRO_CB(p)->same_flow =