Subject: Re: Fw: [Bug 75571] New: using tc action mirred results BUG at net/core/skbuff.c:119

From: Jamal Hadi Salim <[email-masked]>
Date: Thu, 08 May 2014 06:13:43 -0400

Hi Cong,

Sorry for the latency - on travel mode.

On 05/06/14 18:30, Cong Wang wrote:
> On Tue, May 6, 2014 at 8:16 AM, Stephen Hemminger
> <[email-masked]> wrote:

>
> Hmm, looks like we pushed wrong header size here. tcf_mirred_init()
> checks if we could push hard header by checking the type of the target device,
> while in tcf_mirred() we push the ->hard_header_len of the source device
> where this skb is received. I am not sure at all.
>
> Jamal, does the following patch make any sense for you?
>

Dont feel like that patch would help. Scratching my head....
One way to tell is to: ifconfig down the source (which seems like tunnel
device) and install all the rules then last step is ifconfig first ifb,
then the tunnel device. And if it works with current kernel patch is not
needed. It feels like some race condition between installing
rule and using it i.e rule gets installed and when still trying to
advertise to user space, a packet arrives and starts using it.
If the above works - then the question to [email-masked] is what kernel
this is and when did this last work as installed?

[My gut feeling is it may have something to do with the rcu changes
perhaps - but not sure.]

cheers,
jamal