netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* netfilter bridging and enqueue_to_backlog
       [not found] <CAADX0RzKAijpiU7_MpUfziyhzD+CTb6oxgXeqb==XoNSVMKk7Q@mail.gmail.com>
@ 2012-05-30 14:46 ` jay patel
  0 siblings, 0 replies; only message in thread
From: jay patel @ 2012-05-30 14:46 UTC (permalink / raw)
  To: netfilter-devel

Hi all,

We are trying to move an skb from cpu 0 to cpu1 using enqueue to backlog. We
have gotten this to work when bridging is turned off. However, with bridging
turned on it is proving to be a little more difficult.

After bridging is turned on, we try to do an enqueue_to_backlog in the
netfilter/core.c/nf_iterate function. We do this after pre routing is
completed for NF_BR_PRE_ROUTING and NF_INET_PRE_ROUTING hooks.

However, it seems after the enqueue_to_backlog happens, the packet is
dropped at some point (it seems the packet is processed as a local in packet
after it moves to cpu 1, and thus is dropped by the kernel). We see that in
__netif_receive_skb, that the skb->dev,skb->protocol (along with some other
fields in the skb are changed) when the skb is processed on cpu1. We can see
that in br_nf_pre_routing function call there are some modifications to some
of the same fields mentioned.

So our question is what needs to happen to the skb in order for the skb to
process as normal when it is put on cpu1? Is this possible with bridging
turned on?

Thanks,
~Jay

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2012-05-30 14:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <CAADX0RzKAijpiU7_MpUfziyhzD+CTb6oxgXeqb==XoNSVMKk7Q@mail.gmail.com>
2012-05-30 14:46 ` netfilter bridging and enqueue_to_backlog jay patel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).