[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] [NET] back: Reset netfilter context in loopback receive path.



# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Node ID 6d5d5b883dfcf60f0b17fcfc31269e43aecd5b0c
# Parent  52bb01f36c8b2eae9ee62cb21e330142c2e0f668
[NET] back: Reset netfilter context in loopback receive path.
The issue is described in bugzilla report #746.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
 linux-2.6-xen-sparse/drivers/xen/netback/loopback.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletion(-)

diff -r 52bb01f36c8b -r 6d5d5b883dfc 
linux-2.6-xen-sparse/drivers/xen/netback/loopback.c
--- a/linux-2.6-xen-sparse/drivers/xen/netback/loopback.c       Fri Sep 29 
09:23:18 2006 +0100
+++ b/linux-2.6-xen-sparse/drivers/xen/netback/loopback.c       Fri Sep 29 
09:29:20 2006 +0100
@@ -53,7 +53,8 @@
 #include <linux/skbuff.h>
 #include <linux/ethtool.h>
 #include <net/dst.h>
-#include <asm/hypervisor.h> /* is_initial_xendomain() */
+#include <net/xfrm.h>          /* secpath_reset() */
+#include <asm/hypervisor.h>    /* is_initial_xendomain() */
 
 static int nloopbacks = -1;
 module_param(nloopbacks, int, 0);
@@ -111,6 +112,11 @@ static int loopback_start_xmit(struct sk
        skb->protocol = eth_type_trans(skb, dev);
        skb->dev      = dev;
        dev->last_rx  = jiffies;
+
+       /* Flush netfilter context: rx'ed skbuffs not expected to have any. */
+       nf_reset(skb);
+       secpath_reset(skb);
+
        netif_rx(skb);
 
        return 0;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.