| To: | "Linux 802.1Q VLAN" <vlan@xxxxxxxxxxx> |
|---|---|
| Subject: | Re: [Bridge] RE: [VLAN] Re: [PATCH/RFC] Let {ip, arp}tables "see" bridged VLAN tagged{I,AR}P packets |
| From: | Ben Greear <greearb@xxxxxxxxxxxxxxx> |
| Date: | Wed, 08 Oct 2003 09:34:20 -0700 |
| Cc: | "'Tommy Christensen'" <tommy.christensen@xxxxxxxxx>, netdev@xxxxxxxxxxx, bridge <bridge@xxxxxxxx> |
| In-reply-to: | <5B537508CDBED3118403009027745A210B8C14A1@xxxxxxxxxxxxxxxxxxxxxxxxxxx> |
| Organization: | Candela Technologies |
| References: | <5B537508CDBED3118403009027745A210B8C14A1@xxxxxxxxxxxxxxxxxxxxxxxxxxx> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5b) Gecko/20030827 |
Christian Darnell wrote: -----Original Message-----From: Tommy Christensen [mailto:tommy.christensen@xxxxxxxxx] Sent: Wednesday, October 08, 2003 10:09 AM To: Christian Darnell Cc: 'Linux 802.1Q VLAN'; Bart De Schuymer; netdev@xxxxxxxxxxx; bridge Subject: Re: [Bridge] RE: [VLAN] Re: [PATCH/RFC] Let {ip, arp}tables "see" bridged VLAN tagged{I,AR}P packets This is because the VLAN code is mangling shared data. You need to do something like this: --- linux-2.4/net/8021q/vlan_dev.c.org 2003-02-25 15:23:09.000000000 +0100 +++ linux-2.4/net/8021q/vlan_dev.c 2003-10-07 16:01:29.000000000 +0200 @@ -75,7 +75,12 @@ static inline struct sk_buff *vlan_check_reorder_header(struct sk_buff *skb) { if (VLAN_DEV_INFO(skb->dev)->flags & 1) { - skb = skb_share_check(skb, GFP_ATOMIC); + if (skb_shared(skb) || skb_cloned(skb)) { + struct sk_buff *nskb; + nskb = skb_copy(skb, GFP_ATOMIC); + kfree_skb(skb); + skb = nskb; + } Thanks for catching that! So, what good is skb_share_check then? Maybe we should have a skb_share_or_cloned_check() ? Ben -- Ben Greear <greearb@xxxxxxxxxxxxxxx> Candela Technologies Inc http://www.candelatech.com |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [PATCH] Fix 64bit bugs in dscc44.c, Andi Kleen |
|---|---|
| Next by Date: | Re: [PATCH] Fix 64bit bugs in dscc44.c II, David S. Miller |
| Previous by Thread: | RE: [Bridge] RE: [VLAN] Re: [PATCH/RFC] Let {ip, arp}tables "see" bridged VLAN tagged{I,AR}P packets, Christian Darnell |
| Next by Thread: | Re: [Bridge] RE: [VLAN] Re: [PATCH/RFC] Let {ip, arp}tables "see" bridged VLAN tagged{I,AR}P packets, David S. Miller |
| Indexes: | [Date] [Thread] [Top] [All Lists] |