X-Git-Url: http://git.onelab.eu/?p=linux-2.6.git;a=blobdiff_plain;f=linux-2.6-521-packet-tagging.patch;h=db5b7e627a705cee5f9a93043e1fb0c439cea08b;hp=8a80e643974ef323eb080d8d229db6652554dee9;hb=HEAD;hpb=25f1eae35e636f9c0e7fbfdddd7a8dc5fa33b0da diff --git a/linux-2.6-521-packet-tagging.patch b/linux-2.6-521-packet-tagging.patch index 8a80e6439..db5b7e627 100644 --- a/linux-2.6-521-packet-tagging.patch +++ b/linux-2.6-521-packet-tagging.patch @@ -1,18 +1,31 @@ +From 5d0cfcf3f26b5aafe91f23fa9095461bdf83c074 Mon Sep 17 00:00:00 2001 +From: S.Çağlar Onur +Date: Tue, 7 Dec 2010 11:06:08 -0500 +Subject: [PATCH] linux-2.6-521-packet-tagging.patch + +--- + include/linux/skbuff.h | 2 ++ + net/core/skbuff.c | 2 ++ + net/core/sock.c | 2 ++ + net/ipv4/af_inet.c | 2 ++ + net/ipv4/netfilter/ipt_LOG.c | 2 ++ + 5 files changed, 10 insertions(+), 0 deletions(-) + diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h -index 567776e..1b64e1e 100644 +index 69af253..0670992 100644 --- a/include/linux/skbuff.h +++ b/include/linux/skbuff.h -@@ -394,6 +394,8 @@ struct sk_buff { +@@ -391,6 +391,8 @@ struct sk_buff { __u32 dropcount; }; +#define skb_tag mark + __u16 vlan_tci; - - sk_buff_data_t transport_header; + #ifndef __GENKSYMS__ + __u16 rxhash; diff --git a/net/core/skbuff.c b/net/core/skbuff.c -index ec85681..d5a641e 100644 +index 841664f..371324c 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -208,6 +208,7 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask, @@ -23,7 +36,7 @@ index ec85681..d5a641e 100644 /* make sure we initialize shinfo sequentially */ shinfo = skb_shinfo(skb); atomic_set(&shinfo->dataref, 1); -@@ -559,6 +560,7 @@ static void __copy_skb_header(struct sk_buff *new, const struct sk_buff *old) +@@ -562,6 +563,7 @@ static void __copy_skb_header(struct sk_buff *new, const struct sk_buff *old) #endif #endif new->vlan_tci = old->vlan_tci; @@ -32,20 +45,20 @@ index ec85681..d5a641e 100644 skb_copy_secmark(new, old); } diff --git a/net/core/sock.c b/net/core/sock.c -index 617fae7..d276d4b 100644 +index f406c4b..40197d6 100644 --- a/net/core/sock.c +++ b/net/core/sock.c -@@ -1056,6 +1056,8 @@ struct sock *sk_alloc(struct net *net, int family, gfp_t priority, +@@ -1081,6 +1081,8 @@ struct sock *sk_alloc(struct net *net, int family, gfp_t priority, sk->sk_prot = sk->sk_prot_creator = prot; sock_lock_init(sk); sock_net_set(sk, get_net(net)); + if (!in_interrupt()) + sk->sk_mark = nx_current_nid(); atomic_set(&sk->sk_wmem_alloc, 1); - } + sock_update_classid(sk); diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c -index 7731d22..026c3b1 100644 +index e3213b2..3f29c1f 100644 --- a/net/ipv4/af_inet.c +++ b/net/ipv4/af_inet.c @@ -181,6 +181,8 @@ static int inet_autobind(struct sock *sk)