All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Eric W. Biederman" <ebiederm@xmission.com>
To: David Miller <davem@davemloft.net>
Cc: Pablo Neira Ayuso <pablo@netfilter.org>,
	netfilter-devel@vger.kernel.org, <netdev@vger.kernel.org>,
	Nicolas Dichtel <nicolas.dichtel@6wind.com>
Subject: [PATCH next 04/15] nftables: kill nft_pktinfo.ops
Date: Fri, 18 Sep 2015 14:32:57 -0500	[thread overview]
Message-ID: <1442604788-19718-4-git-send-email-ebiederm@xmission.com> (raw)
In-Reply-To: <87fv2bo7br.fsf_-_@x220.int.ebiederm.org>

- Add nft_pktinfo.pf to replace ops->pf
- Add nft_pktinfo.hook to replace ops->hooknum

This simplifies the code, makes it more readable, and likely reduces
cache line misses.  Maintainability is enhanced as the details of
nft_hook_ops are of no concern to the recpients of nft_pktinfo.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
---
 include/net/netfilter/nf_tables.h         |  9 ++++-----
 include/net/netfilter/nf_tables_ipv4.h    |  3 +--
 include/net/netfilter/nf_tables_ipv6.h    |  3 +--
 net/bridge/netfilter/nf_tables_bridge.c   | 16 +++++++---------
 net/bridge/netfilter/nft_reject_bridge.c  | 12 ++++++------
 net/ipv4/netfilter/nf_tables_arp.c        |  2 +-
 net/ipv4/netfilter/nf_tables_ipv4.c       |  2 +-
 net/ipv4/netfilter/nft_chain_nat_ipv4.c   |  2 +-
 net/ipv4/netfilter/nft_chain_route_ipv4.c |  2 +-
 net/ipv4/netfilter/nft_dup_ipv4.c         |  2 +-
 net/ipv4/netfilter/nft_masq_ipv4.c        |  2 +-
 net/ipv4/netfilter/nft_redir_ipv4.c       |  2 +-
 net/ipv4/netfilter/nft_reject_ipv4.c      |  5 ++---
 net/ipv6/netfilter/nf_tables_ipv6.c       |  2 +-
 net/ipv6/netfilter/nft_chain_nat_ipv6.c   |  2 +-
 net/ipv6/netfilter/nft_chain_route_ipv6.c |  2 +-
 net/ipv6/netfilter/nft_dup_ipv6.c         |  2 +-
 net/ipv6/netfilter/nft_redir_ipv6.c       |  3 +--
 net/ipv6/netfilter/nft_reject_ipv6.c      |  5 ++---
 net/netfilter/nf_tables_core.c            |  2 +-
 net/netfilter/nf_tables_netdev.c          | 16 +++++++---------
 net/netfilter/nft_log.c                   |  2 +-
 net/netfilter/nft_meta.c                  |  4 ++--
 net/netfilter/nft_queue.c                 |  2 +-
 net/netfilter/nft_reject_inet.c           | 14 +++++++-------
 25 files changed, 54 insertions(+), 64 deletions(-)

diff --git a/include/net/netfilter/nf_tables.h b/include/net/netfilter/nf_tables.h
index aa8bee72c9d3..c0899f97ff8d 100644
--- a/include/net/netfilter/nf_tables.h
+++ b/include/net/netfilter/nf_tables.h
@@ -16,7 +16,8 @@ struct nft_pktinfo {
 	struct sk_buff			*skb;
 	const struct net_device		*in;
 	const struct net_device		*out;
-	const struct nf_hook_ops	*ops;
+	u8				pf;
+	u8				hook;
 	u8				nhoff;
 	u8				thoff;
 	u8				tprot;
@@ -25,16 +26,14 @@ struct nft_pktinfo {
 };
 
 static inline void nft_set_pktinfo(struct nft_pktinfo *pkt,
-				   const struct nf_hook_ops *ops,
 				   struct sk_buff *skb,
 				   const struct nf_hook_state *state)
 {
 	pkt->skb = skb;
 	pkt->in = pkt->xt.in = state->in;
 	pkt->out = pkt->xt.out = state->out;
-	pkt->ops = ops;
-	pkt->xt.hooknum = ops->hooknum;
-	pkt->xt.family = ops->pf;
+	pkt->hook = pkt->xt.hooknum = state->hook;
+	pkt->pf = pkt->xt.family = state->pf;
 }
 
 /**
diff --git a/include/net/netfilter/nf_tables_ipv4.h b/include/net/netfilter/nf_tables_ipv4.h
index 2df7f96902ee..ca6ef6bf775e 100644
--- a/include/net/netfilter/nf_tables_ipv4.h
+++ b/include/net/netfilter/nf_tables_ipv4.h
@@ -6,13 +6,12 @@
 
 static inline void
 nft_set_pktinfo_ipv4(struct nft_pktinfo *pkt,
-		     const struct nf_hook_ops *ops,
 		     struct sk_buff *skb,
 		     const struct nf_hook_state *state)
 {
 	struct iphdr *ip;
 
-	nft_set_pktinfo(pkt, ops, skb, state);
+	nft_set_pktinfo(pkt, skb, state);
 
 	ip = ip_hdr(pkt->skb);
 	pkt->tprot = ip->protocol;
diff --git a/include/net/netfilter/nf_tables_ipv6.h b/include/net/netfilter/nf_tables_ipv6.h
index 97db2e3a5e65..8ad39a6a5fe1 100644
--- a/include/net/netfilter/nf_tables_ipv6.h
+++ b/include/net/netfilter/nf_tables_ipv6.h
@@ -6,14 +6,13 @@
 
 static inline int
 nft_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
-		     const struct nf_hook_ops *ops,
 		     struct sk_buff *skb,
 		     const struct nf_hook_state *state)
 {
 	int protohdr, thoff = 0;
 	unsigned short frag_off;
 
-	nft_set_pktinfo(pkt, ops, skb, state);
+	nft_set_pktinfo(pkt, skb, state);
 
 	protohdr = ipv6_find_hdr(pkt->skb, &thoff, -1, &frag_off, NULL);
 	/* If malformed, drop it */
diff --git a/net/bridge/netfilter/nf_tables_bridge.c b/net/bridge/netfilter/nf_tables_bridge.c
index a343e62442b1..318d825e4207 100644
--- a/net/bridge/netfilter/nf_tables_bridge.c
+++ b/net/bridge/netfilter/nf_tables_bridge.c
@@ -65,27 +65,25 @@ int nft_bridge_ip6hdr_validate(struct sk_buff *skb)
 EXPORT_SYMBOL_GPL(nft_bridge_ip6hdr_validate);
 
 static inline void nft_bridge_set_pktinfo_ipv4(struct nft_pktinfo *pkt,
-					       const struct nf_hook_ops *ops,
 					       struct sk_buff *skb,
 					       const struct nf_hook_state *state)
 {
 	if (nft_bridge_iphdr_validate(skb))
-		nft_set_pktinfo_ipv4(pkt, ops, skb, state);
+		nft_set_pktinfo_ipv4(pkt, skb, state);
 	else
-		nft_set_pktinfo(pkt, ops, skb, state);
+		nft_set_pktinfo(pkt, skb, state);
 }
 
 static inline void nft_bridge_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
-					       const struct nf_hook_ops *ops,
 					       struct sk_buff *skb,
 					       const struct nf_hook_state *state)
 {
 #if IS_ENABLED(CONFIG_IPV6)
 	if (nft_bridge_ip6hdr_validate(skb) &&
-	    nft_set_pktinfo_ipv6(pkt, ops, skb, state) == 0)
+	    nft_set_pktinfo_ipv6(pkt, skb, state) == 0)
 		return;
 #endif
-	nft_set_pktinfo(pkt, ops, skb, state);
+	nft_set_pktinfo(pkt, skb, state);
 }
 
 static unsigned int
@@ -97,13 +95,13 @@ nft_do_chain_bridge(const struct nf_hook_ops *ops,
 
 	switch (eth_hdr(skb)->h_proto) {
 	case htons(ETH_P_IP):
-		nft_bridge_set_pktinfo_ipv4(&pkt, ops, skb, state);
+		nft_bridge_set_pktinfo_ipv4(&pkt, skb, state);
 		break;
 	case htons(ETH_P_IPV6):
-		nft_bridge_set_pktinfo_ipv6(&pkt, ops, skb, state);
+		nft_bridge_set_pktinfo_ipv6(&pkt, skb, state);
 		break;
 	default:
-		nft_set_pktinfo(&pkt, ops, skb, state);
+		nft_set_pktinfo(&pkt, skb, state);
 		break;
 	}
 
diff --git a/net/bridge/netfilter/nft_reject_bridge.c b/net/bridge/netfilter/nft_reject_bridge.c
index 858d848564ee..cee92612b2cc 100644
--- a/net/bridge/netfilter/nft_reject_bridge.c
+++ b/net/bridge/netfilter/nft_reject_bridge.c
@@ -273,16 +273,16 @@ static void nft_reject_bridge_eval(const struct nft_expr *expr,
 		switch (priv->type) {
 		case NFT_REJECT_ICMP_UNREACH:
 			nft_reject_br_send_v4_unreach(pkt->skb, pkt->in,
-						      pkt->ops->hooknum,
+						      pkt->hook,
 						      priv->icmp_code);
 			break;
 		case NFT_REJECT_TCP_RST:
 			nft_reject_br_send_v4_tcp_reset(pkt->skb, pkt->in,
-							pkt->ops->hooknum);
+							pkt->hook);
 			break;
 		case NFT_REJECT_ICMPX_UNREACH:
 			nft_reject_br_send_v4_unreach(pkt->skb, pkt->in,
-						      pkt->ops->hooknum,
+						      pkt->hook,
 						      nft_reject_icmp_code(priv->icmp_code));
 			break;
 		}
@@ -291,16 +291,16 @@ static void nft_reject_bridge_eval(const struct nft_expr *expr,
 		switch (priv->type) {
 		case NFT_REJECT_ICMP_UNREACH:
 			nft_reject_br_send_v6_unreach(net, pkt->skb, pkt->in,
-						      pkt->ops->hooknum,
+						      pkt->hook,
 						      priv->icmp_code);
 			break;
 		case NFT_REJECT_TCP_RST:
 			nft_reject_br_send_v6_tcp_reset(net, pkt->skb, pkt->in,
-							pkt->ops->hooknum);
+							pkt->hook);
 			break;
 		case NFT_REJECT_ICMPX_UNREACH:
 			nft_reject_br_send_v6_unreach(net, pkt->skb, pkt->in,
-						      pkt->ops->hooknum,
+						      pkt->hook,
 						      nft_reject_icmpv6_code(priv->icmp_code));
 			break;
 		}
diff --git a/net/ipv4/netfilter/nf_tables_arp.c b/net/ipv4/netfilter/nf_tables_arp.c
index 8412268bbad1..883bbf83fe09 100644
--- a/net/ipv4/netfilter/nf_tables_arp.c
+++ b/net/ipv4/netfilter/nf_tables_arp.c
@@ -21,7 +21,7 @@ nft_do_chain_arp(const struct nf_hook_ops *ops,
 {
 	struct nft_pktinfo pkt;
 
-	nft_set_pktinfo(&pkt, ops, skb, state);
+	nft_set_pktinfo(&pkt, skb, state);
 
 	return nft_do_chain(&pkt, ops);
 }
diff --git a/net/ipv4/netfilter/nf_tables_ipv4.c b/net/ipv4/netfilter/nf_tables_ipv4.c
index aa180d3a69a5..805be5c9fcc3 100644
--- a/net/ipv4/netfilter/nf_tables_ipv4.c
+++ b/net/ipv4/netfilter/nf_tables_ipv4.c
@@ -24,7 +24,7 @@ static unsigned int nft_do_chain_ipv4(const struct nf_hook_ops *ops,
 {
 	struct nft_pktinfo pkt;
 
-	nft_set_pktinfo_ipv4(&pkt, ops, skb, state);
+	nft_set_pktinfo_ipv4(&pkt, skb, state);
 
 	return nft_do_chain(&pkt, ops);
 }
diff --git a/net/ipv4/netfilter/nft_chain_nat_ipv4.c b/net/ipv4/netfilter/nft_chain_nat_ipv4.c
index bf5c30ae14e4..c3ffecf28d38 100644
--- a/net/ipv4/netfilter/nft_chain_nat_ipv4.c
+++ b/net/ipv4/netfilter/nft_chain_nat_ipv4.c
@@ -33,7 +33,7 @@ static unsigned int nft_nat_do_chain(const struct nf_hook_ops *ops,
 {
 	struct nft_pktinfo pkt;
 
-	nft_set_pktinfo_ipv4(&pkt, ops, skb, state);
+	nft_set_pktinfo_ipv4(&pkt, skb, state);
 
 	return nft_do_chain(&pkt, ops);
 }
diff --git a/net/ipv4/netfilter/nft_chain_route_ipv4.c b/net/ipv4/netfilter/nft_chain_route_ipv4.c
index e335b0afdaf3..2a1e3d8a3e43 100644
--- a/net/ipv4/netfilter/nft_chain_route_ipv4.c
+++ b/net/ipv4/netfilter/nft_chain_route_ipv4.c
@@ -37,7 +37,7 @@ static unsigned int nf_route_table_hook(const struct nf_hook_ops *ops,
 	    ip_hdrlen(skb) < sizeof(struct iphdr))
 		return NF_ACCEPT;
 
-	nft_set_pktinfo_ipv4(&pkt, ops, skb, state);
+	nft_set_pktinfo_ipv4(&pkt, skb, state);
 
 	mark = skb->mark;
 	iph = ip_hdr(skb);
diff --git a/net/ipv4/netfilter/nft_dup_ipv4.c b/net/ipv4/netfilter/nft_dup_ipv4.c
index b45932d43b69..30bcf820e8bd 100644
--- a/net/ipv4/netfilter/nft_dup_ipv4.c
+++ b/net/ipv4/netfilter/nft_dup_ipv4.c
@@ -30,7 +30,7 @@ static void nft_dup_ipv4_eval(const struct nft_expr *expr,
 	};
 	int oif = regs->data[priv->sreg_dev];
 
-	nf_dup_ipv4(pkt->skb, pkt->ops->hooknum, &gw, oif);
+	nf_dup_ipv4(pkt->skb, pkt->hook, &gw, oif);
 }
 
 static int nft_dup_ipv4_init(const struct nft_ctx *ctx,
diff --git a/net/ipv4/netfilter/nft_masq_ipv4.c b/net/ipv4/netfilter/nft_masq_ipv4.c
index 40e414c4ca56..b72ffc58e255 100644
--- a/net/ipv4/netfilter/nft_masq_ipv4.c
+++ b/net/ipv4/netfilter/nft_masq_ipv4.c
@@ -26,7 +26,7 @@ static void nft_masq_ipv4_eval(const struct nft_expr *expr,
 	memset(&range, 0, sizeof(range));
 	range.flags = priv->flags;
 
-	regs->verdict.code = nf_nat_masquerade_ipv4(pkt->skb, pkt->ops->hooknum,
+	regs->verdict.code = nf_nat_masquerade_ipv4(pkt->skb, pkt->hook,
 						    &range, pkt->out);
 }
 
diff --git a/net/ipv4/netfilter/nft_redir_ipv4.c b/net/ipv4/netfilter/nft_redir_ipv4.c
index d8d795df9c13..c09d4381427e 100644
--- a/net/ipv4/netfilter/nft_redir_ipv4.c
+++ b/net/ipv4/netfilter/nft_redir_ipv4.c
@@ -36,7 +36,7 @@ static void nft_redir_ipv4_eval(const struct nft_expr *expr,
 	mr.range[0].flags |= priv->flags;
 
 	regs->verdict.code = nf_nat_redirect_ipv4(pkt->skb, &mr,
-						  pkt->ops->hooknum);
+						  pkt->hook);
 }
 
 static struct nft_expr_type nft_redir_ipv4_type;
diff --git a/net/ipv4/netfilter/nft_reject_ipv4.c b/net/ipv4/netfilter/nft_reject_ipv4.c
index b07e58b51158..c1582e03b628 100644
--- a/net/ipv4/netfilter/nft_reject_ipv4.c
+++ b/net/ipv4/netfilter/nft_reject_ipv4.c
@@ -27,11 +27,10 @@ static void nft_reject_ipv4_eval(const struct nft_expr *expr,
 
 	switch (priv->type) {
 	case NFT_REJECT_ICMP_UNREACH:
-		nf_send_unreach(pkt->skb, priv->icmp_code,
-				pkt->ops->hooknum);
+		nf_send_unreach(pkt->skb, priv->icmp_code, pkt->hook);
 		break;
 	case NFT_REJECT_TCP_RST:
-		nf_send_reset(pkt->skb, pkt->ops->hooknum);
+		nf_send_reset(pkt->skb, pkt->hook);
 		break;
 	default:
 		break;
diff --git a/net/ipv6/netfilter/nf_tables_ipv6.c b/net/ipv6/netfilter/nf_tables_ipv6.c
index c8148ba76d1a..41340b794f9b 100644
--- a/net/ipv6/netfilter/nf_tables_ipv6.c
+++ b/net/ipv6/netfilter/nf_tables_ipv6.c
@@ -23,7 +23,7 @@ static unsigned int nft_do_chain_ipv6(const struct nf_hook_ops *ops,
 	struct nft_pktinfo pkt;
 
 	/* malformed packet, drop it */
-	if (nft_set_pktinfo_ipv6(&pkt, ops, skb, state) < 0)
+	if (nft_set_pktinfo_ipv6(&pkt, skb, state) < 0)
 		return NF_DROP;
 
 	return nft_do_chain(&pkt, ops);
diff --git a/net/ipv6/netfilter/nft_chain_nat_ipv6.c b/net/ipv6/netfilter/nft_chain_nat_ipv6.c
index 951bb458b7bd..e96feaefeb14 100644
--- a/net/ipv6/netfilter/nft_chain_nat_ipv6.c
+++ b/net/ipv6/netfilter/nft_chain_nat_ipv6.c
@@ -31,7 +31,7 @@ static unsigned int nft_nat_do_chain(const struct nf_hook_ops *ops,
 {
 	struct nft_pktinfo pkt;
 
-	nft_set_pktinfo_ipv6(&pkt, ops, skb, state);
+	nft_set_pktinfo_ipv6(&pkt, skb, state);
 
 	return nft_do_chain(&pkt, ops);
 }
diff --git a/net/ipv6/netfilter/nft_chain_route_ipv6.c b/net/ipv6/netfilter/nft_chain_route_ipv6.c
index 0dafdaac5e17..d1bcd2ed7bcc 100644
--- a/net/ipv6/netfilter/nft_chain_route_ipv6.c
+++ b/net/ipv6/netfilter/nft_chain_route_ipv6.c
@@ -33,7 +33,7 @@ static unsigned int nf_route_table_hook(const struct nf_hook_ops *ops,
 	u32 mark, flowlabel;
 
 	/* malformed packet, drop it */
-	if (nft_set_pktinfo_ipv6(&pkt, ops, skb, state) < 0)
+	if (nft_set_pktinfo_ipv6(&pkt, skb, state) < 0)
 		return NF_DROP;
 
 	/* save source/dest address, mark, hoplimit, flowlabel, priority */
diff --git a/net/ipv6/netfilter/nft_dup_ipv6.c b/net/ipv6/netfilter/nft_dup_ipv6.c
index 0eaa4f65fdea..c81204faf15d 100644
--- a/net/ipv6/netfilter/nft_dup_ipv6.c
+++ b/net/ipv6/netfilter/nft_dup_ipv6.c
@@ -28,7 +28,7 @@ static void nft_dup_ipv6_eval(const struct nft_expr *expr,
 	struct in6_addr *gw = (struct in6_addr *)&regs->data[priv->sreg_addr];
 	int oif = regs->data[priv->sreg_dev];
 
-	nf_dup_ipv6(pkt->skb, pkt->ops->hooknum, gw, oif);
+	nf_dup_ipv6(pkt->skb, pkt->hook, gw, oif);
 }
 
 static int nft_dup_ipv6_init(const struct nft_ctx *ctx,
diff --git a/net/ipv6/netfilter/nft_redir_ipv6.c b/net/ipv6/netfilter/nft_redir_ipv6.c
index effd393bd517..aca44e89a881 100644
--- a/net/ipv6/netfilter/nft_redir_ipv6.c
+++ b/net/ipv6/netfilter/nft_redir_ipv6.c
@@ -35,8 +35,7 @@ static void nft_redir_ipv6_eval(const struct nft_expr *expr,
 
 	range.flags |= priv->flags;
 
-	regs->verdict.code = nf_nat_redirect_ipv6(pkt->skb, &range,
-						  pkt->ops->hooknum);
+	regs->verdict.code = nf_nat_redirect_ipv6(pkt->skb, &range, pkt->hook);
 }
 
 static struct nft_expr_type nft_redir_ipv6_type;
diff --git a/net/ipv6/netfilter/nft_reject_ipv6.c b/net/ipv6/netfilter/nft_reject_ipv6.c
index d0d1540ecf87..ffcac7d5da43 100644
--- a/net/ipv6/netfilter/nft_reject_ipv6.c
+++ b/net/ipv6/netfilter/nft_reject_ipv6.c
@@ -28,11 +28,10 @@ static void nft_reject_ipv6_eval(const struct nft_expr *expr,
 
 	switch (priv->type) {
 	case NFT_REJECT_ICMP_UNREACH:
-		nf_send_unreach6(net, pkt->skb, priv->icmp_code,
-				 pkt->ops->hooknum);
+		nf_send_unreach6(net, pkt->skb, priv->icmp_code, pkt->hook);
 		break;
 	case NFT_REJECT_TCP_RST:
-		nf_send_reset6(net, pkt->skb, pkt->ops->hooknum);
+		nf_send_reset6(net, pkt->skb, pkt->hook);
 		break;
 	default:
 		break;
diff --git a/net/netfilter/nf_tables_core.c b/net/netfilter/nf_tables_core.c
index 05d0b03530f6..539083099c0d 100644
--- a/net/netfilter/nf_tables_core.c
+++ b/net/netfilter/nf_tables_core.c
@@ -50,7 +50,7 @@ static void __nft_trace_packet(const struct nft_pktinfo *pkt,
 {
 	struct net *net = dev_net(pkt->in ? pkt->in : pkt->out);
 
-	nf_log_trace(net, pkt->xt.family, pkt->ops->hooknum, pkt->skb, pkt->in,
+	nf_log_trace(net, pkt->pf, pkt->hook, pkt->skb, pkt->in,
 		     pkt->out, &trace_loginfo, "TRACE: %s:%s:%s:%u ",
 		     chain->table->name, chain->name, comments[type],
 		     rulenum);
diff --git a/net/netfilter/nf_tables_netdev.c b/net/netfilter/nf_tables_netdev.c
index 2cae4d4a03b7..db416a3396e9 100644
--- a/net/netfilter/nf_tables_netdev.c
+++ b/net/netfilter/nf_tables_netdev.c
@@ -17,13 +17,13 @@
 
 static inline void
 nft_netdev_set_pktinfo_ipv4(struct nft_pktinfo *pkt,
-			    const struct nf_hook_ops *ops, struct sk_buff *skb,
+			    struct sk_buff *skb,
 			    const struct nf_hook_state *state)
 {
 	struct iphdr *iph, _iph;
 	u32 len, thoff;
 
-	nft_set_pktinfo(pkt, ops, skb, state);
+	nft_set_pktinfo(pkt, skb, state);
 
 	iph = skb_header_pointer(skb, skb_network_offset(skb), sizeof(*iph),
 				 &_iph);
@@ -48,7 +48,6 @@ nft_netdev_set_pktinfo_ipv4(struct nft_pktinfo *pkt,
 
 static inline void
 __nft_netdev_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
-			      const struct nf_hook_ops *ops,
 			      struct sk_buff *skb,
 			      const struct nf_hook_state *state)
 {
@@ -82,12 +81,11 @@ __nft_netdev_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
 }
 
 static inline void nft_netdev_set_pktinfo_ipv6(struct nft_pktinfo *pkt,
-					       const struct nf_hook_ops *ops,
 					       struct sk_buff *skb,
 					       const struct nf_hook_state *state)
 {
-	nft_set_pktinfo(pkt, ops, skb, state);
-	__nft_netdev_set_pktinfo_ipv6(pkt, ops, skb, state);
+	nft_set_pktinfo(pkt, skb, state);
+	__nft_netdev_set_pktinfo_ipv6(pkt, skb, state);
 }
 
 static unsigned int
@@ -98,13 +96,13 @@ nft_do_chain_netdev(const struct nf_hook_ops *ops, struct sk_buff *skb,
 
 	switch (eth_hdr(skb)->h_proto) {
 	case htons(ETH_P_IP):
-		nft_netdev_set_pktinfo_ipv4(&pkt, ops, skb, state);
+		nft_netdev_set_pktinfo_ipv4(&pkt, skb, state);
 		break;
 	case htons(ETH_P_IPV6):
-		nft_netdev_set_pktinfo_ipv6(&pkt, ops, skb, state);
+		nft_netdev_set_pktinfo_ipv6(&pkt, skb, state);
 		break;
 	default:
-		nft_set_pktinfo(&pkt, ops, skb, state);
+		nft_set_pktinfo(&pkt, skb, state);
 		break;
 	}
 
diff --git a/net/netfilter/nft_log.c b/net/netfilter/nft_log.c
index a13d6a386d63..c7c7df85f0b7 100644
--- a/net/netfilter/nft_log.c
+++ b/net/netfilter/nft_log.c
@@ -33,7 +33,7 @@ static void nft_log_eval(const struct nft_expr *expr,
 	const struct nft_log *priv = nft_expr_priv(expr);
 	struct net *net = dev_net(pkt->in ? pkt->in : pkt->out);
 
-	nf_log_packet(net, pkt->ops->pf, pkt->ops->hooknum, pkt->skb, pkt->in,
+	nf_log_packet(net, pkt->pf, pkt->hook, pkt->skb, pkt->in,
 		      pkt->out, &priv->loginfo, "%s", priv->prefix);
 }
 
diff --git a/net/netfilter/nft_meta.c b/net/netfilter/nft_meta.c
index cb2f13ebb5a6..e4ad2c24bc41 100644
--- a/net/netfilter/nft_meta.c
+++ b/net/netfilter/nft_meta.c
@@ -42,7 +42,7 @@ void nft_meta_get_eval(const struct nft_expr *expr,
 		*(__be16 *)dest = skb->protocol;
 		break;
 	case NFT_META_NFPROTO:
-		*dest = pkt->ops->pf;
+		*dest = pkt->pf;
 		break;
 	case NFT_META_L4PROTO:
 		*dest = pkt->tprot;
@@ -135,7 +135,7 @@ void nft_meta_get_eval(const struct nft_expr *expr,
 			break;
 		}
 
-		switch (pkt->ops->pf) {
+		switch (pkt->pf) {
 		case NFPROTO_IPV4:
 			if (ipv4_is_multicast(ip_hdr(skb)->daddr))
 				*dest = PACKET_MULTICAST;
diff --git a/net/netfilter/nft_queue.c b/net/netfilter/nft_queue.c
index 96805d21d618..61d216eb7917 100644
--- a/net/netfilter/nft_queue.c
+++ b/net/netfilter/nft_queue.c
@@ -42,7 +42,7 @@ static void nft_queue_eval(const struct nft_expr *expr,
 			queue = priv->queuenum + cpu % priv->queues_total;
 		} else {
 			queue = nfqueue_hash(pkt->skb, queue,
-					     priv->queues_total, pkt->ops->pf,
+					     priv->queues_total, pkt->pf,
 					     jhash_initval);
 		}
 	}
diff --git a/net/netfilter/nft_reject_inet.c b/net/netfilter/nft_reject_inet.c
index 635dbba93d01..dea6750af6ff 100644
--- a/net/netfilter/nft_reject_inet.c
+++ b/net/netfilter/nft_reject_inet.c
@@ -24,20 +24,20 @@ static void nft_reject_inet_eval(const struct nft_expr *expr,
 	struct nft_reject *priv = nft_expr_priv(expr);
 	struct net *net = dev_net((pkt->in != NULL) ? pkt->in : pkt->out);
 
-	switch (pkt->ops->pf) {
+	switch (pkt->pf) {
 	case NFPROTO_IPV4:
 		switch (priv->type) {
 		case NFT_REJECT_ICMP_UNREACH:
 			nf_send_unreach(pkt->skb, priv->icmp_code,
-					pkt->ops->hooknum);
+					pkt->hook);
 			break;
 		case NFT_REJECT_TCP_RST:
-			nf_send_reset(pkt->skb, pkt->ops->hooknum);
+			nf_send_reset(pkt->skb, pkt->hook);
 			break;
 		case NFT_REJECT_ICMPX_UNREACH:
 			nf_send_unreach(pkt->skb,
 					nft_reject_icmp_code(priv->icmp_code),
-					pkt->ops->hooknum);
+					pkt->hook);
 			break;
 		}
 		break;
@@ -45,15 +45,15 @@ static void nft_reject_inet_eval(const struct nft_expr *expr,
 		switch (priv->type) {
 		case NFT_REJECT_ICMP_UNREACH:
 			nf_send_unreach6(net, pkt->skb, priv->icmp_code,
-					 pkt->ops->hooknum);
+					 pkt->hook);
 			break;
 		case NFT_REJECT_TCP_RST:
-			nf_send_reset6(net, pkt->skb, pkt->ops->hooknum);
+			nf_send_reset6(net, pkt->skb, pkt->hook);
 			break;
 		case NFT_REJECT_ICMPX_UNREACH:
 			nf_send_unreach6(net, pkt->skb,
 					 nft_reject_icmpv6_code(priv->icmp_code),
-					 pkt->ops->hooknum);
+					 pkt->hook);
 			break;
 		}
 		break;
-- 
2.2.1


  parent reply	other threads:[~2015-09-18 19:32 UTC|newest]

Thread overview: 540+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-16  0:59 [PATCH next 0/30] Passing net through the netfilter hooks Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 01/30] netfilter: Remove !CONFIG_NETFITLER definition of nf_hook_thresh Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 02/30] netfilter: Store net in nf_hook_state Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 03/30] netfilter: Pass net to nf_hook_thresh Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 04/30] xfrm: Remove unused afinfo method init_dst Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 05/30] net: Merge dst_output and dst_output_sk Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 06/30] ipv4: Compute net once in ip_forward Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 07/30] ipv4: Compute net once in ip_forward_finish Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 08/30] ipv4: Compute net once in ip_rcv Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 09/30] ipv4: Remember the net in ip_output and ip_mc_output Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 10/30] ipv4: Don't recompute net in ipmr_queue_xmit Eric W. Biederman
2015-09-16  1:03 ` [PATCH next 11/30] ipv4: Only compute net once in ip_do_fragment Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 12/30] ipv4: Explicitly compute net in ip_fragment Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 13/30] ipv4: Only compute net once in ip_finish_output2 Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 14/30] ipv4: Only compute net once in ip_rcv_finish Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 15/30] ipv4: Only compute net once in ipmr_forward_finish Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 16/30] ipv6: Only compute net once in ip6mr_forward2_finish Eric W. Biederman
2015-09-17 16:00   ` Nicolas Dichtel
2015-09-16  1:04 ` [PATCH next 17/30] arp: Introduce arp_xmit_finish Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 18/30] bridge: Introduce br_send_bpdu_finish Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 19/30] net: Remove dev_queue_xmit_sk Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 20/30] ipv6: Don't recompute net in ip6_rcv Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 21/30] ipv6: Only compute net once in ip6_finish_output2 Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 22/30] ipv6: Cache net in ip6_output Eric W. Biederman
2015-09-17 16:06   ` Nicolas Dichtel
2015-09-16  1:04 ` [PATCH next 23/30] ipv6: Compute net once in raw6_send_hdrinc Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 24/30] bridge: Pass net into br_nf_ip_fragment Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 25/30] bridge: Pass net into br_nf_push_frag_xmit Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 26/30] bridge: Cache net in br_nf_pre_routing_finish Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 27/30] bridge: Add br_netif_receive_skb remove netif_receive_skb_sk Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 28/30] netfilter: Pass struct net into the netfilter hooks Eric W. Biederman
2015-09-17 16:25   ` Nicolas Dichtel
2015-09-16  1:04 ` [PATCH next 29/30] netfilter: Use nf_hook_state.net Eric W. Biederman
2015-09-16  1:04 ` [PATCH next 30/30] netfilter: Pass net into okfn Eric W. Biederman
2015-09-17 16:30 ` [PATCH next 0/30] Passing net through the netfilter hooks Nicolas Dichtel
2015-09-17 22:24   ` Eric W. Biederman
2015-09-18  7:08     ` Nicolas Dichtel
2015-09-17 22:21 ` [PATCH next 31/30] netfilter: Add blank lines in callers of " Eric W. Biederman
2015-09-18  0:19 ` [PATCH next 0/30] Passing net through the " David Miller
2015-09-18  5:38   ` David Miller
2015-09-18  8:56   ` Pablo Neira Ayuso
2015-09-18 15:06 ` [PATCH next 0/14] netfilter: Stop guessing net Eric W. Biederman
2015-09-18 16:01   ` Nicolas Dichtel
2015-09-18 16:13     ` Eric W. Biederman
2015-09-18 16:28       ` Nicolas Dichtel
2015-09-18 16:05   ` [PATCH next 01/14] ebtables: Simplify the arguments to ebt_do_table Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 02/14] inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 03/14] inet netfilter: Prefer state->hook to ops->hooknum Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 04/14] nftables: kill nft_pktinfo.ops Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 05/14] x_tables: Pass struct net in xt_action_param Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 06/14] x_tables: Use par->net instead of computing from the passed net devices Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 07/14] nftables: Pass struct net in nft_pktinfo Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 08/14] nftables: Use pkt->net instead of computing net from the passed net_devices Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 09/14] net: Pass net to nf_dup_ipv4 and nf_dup_ipv6 Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 10/14] nf_conntrack: Add a struct net parameter to l4_pkt_to_tuple Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 11/14] ipvs: Read hooknum from state rather than ops->hooknum Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 12/14] netfilter: Pass priv instead of nf_hook_ops to netfilter hooks Eric W. Biederman
2015-09-18 16:05   ` [PATCH next 13/14] netfilter: Pass net into nf_xfrm_me_harder Eric W. Biederman
2015-09-18 16:06   ` [PATCH next 14/14] netfilter: Use nf_ct_net instead of dev_net(out) in nf_nat_masquerade_ipv6 Eric W. Biederman
2015-09-18 16:32   ` [PATCH next 0/14] netfilter: Stop guessing net Nicolas Dichtel
2015-09-18 18:15     ` Eric W. Biederman
2015-09-18 19:28   ` [PATCH next 0/15] netfilter: Stop guessing net (take 2) Eric W. Biederman
2015-09-18 19:32     ` [PATCH next 01/15] ebtables: Simplify the arguments to ebt_do_table Eric W. Biederman
2015-09-18 19:32     ` [PATCH next 02/15] inet netfilter: Remove hook from ip6t_do_table, arp_do_table, ipt_do_table Eric W. Biederman
2015-09-18 19:32     ` [PATCH next 03/15] inet netfilter: Prefer state->hook to ops->hooknum Eric W. Biederman
2015-09-18 19:32     ` Eric W. Biederman [this message]
2015-09-18 19:32     ` [PATCH next 05/15] x_tables: Pass struct net in xt_action_param Eric W. Biederman
2015-09-18 19:32     ` [PATCH next 06/15] x_tables: Use par->net instead of computing from the passed net devices Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 07/15] nftables: Pass struct net in nft_pktinfo Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 08/15] nftables: Use pkt->net instead of computing net from the passed net_devices Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 09/15] net: Pass net to nf_dup_ipv4 and nf_dup_ipv6 Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 10/15] act_connmark: Remember the struct net instead of guessing it Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 11/15] nf_conntrack: Add a struct net parameter to l4_pkt_to_tuple Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 12/15] ipvs: Read hooknum from state rather than ops->hooknum Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 13/15] netfilter: Pass priv instead of nf_hook_ops to netfilter hooks Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 14/15] netfilter: Pass net into nf_xfrm_me_harder Eric W. Biederman
2015-09-18 19:33     ` [PATCH next 15/15] netfilter: Use nf_ct_net instead of dev_net(out) in nf_nat_masquerade_ipv6 Eric W. Biederman
2015-09-18 20:21     ` [PATCH next 0/15] netfilter: Stop guessing net (take 2) Pablo Neira Ayuso
2015-09-20  6:21     ` [PATCH next 00/84] ipvs: Stop guessing the network namespace Eric W. Biederman
2015-09-20  6:21       ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 01/84] ipvs: Hoist computation of ipvs earlier in sctp_conn_schedule Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 02/84] ipvs: Don't use current in proc_do_defense_mode Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 03/84] ipvs: Use state->net in the ipvs forward functions Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 04/84] ipvs: Store ipvs not net in struct ip_vs_conn Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 05/84] ipvs: Store ipvs not net in struct ip_vs_conn_param Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 06/84] ipvs: Pass ipvs not net to ip_vs_fill_conn Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 07/84] ipvs: Store ipvs not net in struct ip_vs_service Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 08/84] ipvs: Pass ipvs not net to ip_vs_svc_fwm_hashkey Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 09/84] ipvs: Pass ipvs not net to __ip_vs_svc_fwm_find Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 10/84] ipvs: Pass ipvs not net to ip_vs_svc_hashkey Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 11/84] ipvs: Pass ipvs not net to __ip_vs_service_find Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 12/84] ipvs: Pass ipvs not net to ipvs_service_find Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 13/84] ipvs: Pass ipvs not net to ip_vs_has_real_service Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 14/84] ipvs: Pass ipvs not net to ip_vs_find_dest Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 15/84] ipvs: Pass ipvs not net to ip_vs_trash_cleanup Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 16/84] ipvs: Pass ipvs not net to __ip_vs_del_dest Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 17/84] ipvs: Pass ipvs not net to ip_vs_dest_trash_expire Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 18/84] ipvs: Cache ipvs in ip_vs_genl_set_cmd Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 19/84] ipvs: Pass ipvs not net to ip_vs_add_service Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 20/84] ipvs: Pass ipvs not net to ip_vs_flush Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 21/84] ipvs: Pass ipvs not net to ip_vs_service_net_cleanup Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 22/84] ipvs: Pass ipvs not net to ip_vs_zero_all Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 23/84] ipvs: Cache ipvs in ip_vs_in_icmp and ip_vs_in_icmp_v6 Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 24/84] ipvs: Pass ipvs not net to ip_vs_proto_data_get Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 25/84] ipvs: Pass ipvs not net to ip_vs_set_timeout Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 26/84] ipvs: Pass ipvs not net to __ip_vs_get_servie_entries Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 27/84] ipvs: Pass ipvs not net to __ip_vs_get_dest_entries Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 28/84] ipvs: Pass ipvs not net to __ip_vs_get_timeouts Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 29/84] ipvs: Pass ipvs not net to ip_vs_genl_parse_service Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 30/84] ipvs: Pass ipvs not net to ip_vs_genl_find_service Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 31/84] ipvs: Pass ipvs not net to ip_vs_genl_new_daemon Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 32/84] ipvs: Pass ipvs not net to ip_vs_genl_del_daemon Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 33/84] ipvs: Pass ipvs not net to start_sync_thread Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 34/84] ipvs: Pass ipvs not net to stop_sync_thread Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 35/84] ipvs: Pass ipvs not net to make_send_sock Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 36/84] ipvs: Pass ipvs not net to make_receive_sock Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 37/84] ipvs: Store ipvs not net in struct ip_vs_sync_thread_data Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 38/84] ipvs: Pass ipvs not net to ip_vs_process_message Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 39/84] ipvs: Pass ipvs not net to ip_vs_sync_conn_v0 Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 40/84] ipvs: Pass ipvs not net to ip_vs_sync_conn Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 41/84] ipvs: Pass ipvs not net to ip_vs_proc_conn Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 42/84] ipvs: Pass ipvs not net to ip_vs_proc_sync_conn Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:22       ` [PATCH next 43/84] ipvs: Pass ipvs not net to ip_vs_sync_net_init Eric W. Biederman
2015-09-20  6:22         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 44/84] ipvs: Pass ipvs not net to ip_vs_sync_net_cleanup Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 45/84] ipvs: Pass ipvs not net to ip_vs_genl_set_config Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 46/84] ipvs: Pass ipvs not net to ip_vs_start_estimator aned ip_vs_stop_estimator Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 47/84] ipvs: Pass ipvs not net to ip_vs_random_drop_entry Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 48/84] ipvs: Pass ipvs not net to ip_vs_control_net_(init|cleanup)_sysctl Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 49/84] ipvs: Pass ipvs not net into ip_vs_control_net_(init|cleanup) Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 50/84] ipvs: Pass ipvs not net to estimation_timer Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 51/84] ipvs: Pass ipvs not net to ip_vs_estimator_net_init and ip_vs_estimator_cleanup Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 52/84] ipvs: Pass ipvs not net into register_app and unregister_app Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 53/84] ipvs: Pass ipvs not net into ip_vs_app_inc_new Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 54/84] ipvs: Pass ipvs not net to register_ip_vs_app_inc Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 55/84] ipvs: Pass ipvs not net to register_ip_vs_app and unregister_ip_vs_app Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 56/84] ipvs: Pass ipvs not net into ip_vs_app_inc_release Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 57/84] ipvs: Pass ipvs not net into ip_vs_app_net_init and ip_vs_app_net_cleanup Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 58/84] ipvs: Pass ipvs not net into [un]register_ip_vs_proto_netns Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 59/84] ipvs: Pass ipvs not net into init_netns and exit_netns Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 60/84] ipvs: Pass ipvs into ip_vs_conn_fill_param_proto Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 61/84] ipvs: Pass ipvs into .conn_in_get and ip_vs_conn_in_get_proto Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 62/84] ipvs: Pass ipvs into conn_out_get Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 63/84] ipvs: Pass ipvs not net to ip_vs_conn_hashkey Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 64/84] ipvs: Pass ipvs not net into ip_vs_conn_net_flush Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 65/84] ipvs: Pass ipvs not net into ip_vs_conn_net_init and ip_vs_conn_net_cleanup Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 66/84] ipvs: Pass ipvs into .conn_schedule and ip_vs_try_to_schedule Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 67/84] ipvs: Better derivation of ipvs in ip_vs_tunnel_xmit Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 68/84] ipvs: Pass ipvs into __ip_vs_get_out_rt Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 69/84] ipvs: Pass ipvs into __ip_vs_get_out_rt_v6 Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 70/84] ipvs: Pass ipvs into ensure_mtu_is adequate Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 71/84] ipvs: Better derivation of ipvs in ip_vs_in_stats and ip_vs_out_stats Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 72/84] ipvs: Wrap sysctl_cache_bypass and remove ifdefs in ip_vs_leave Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 73/84] ipvs: Simplify ipvs and net access " Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 74/84] ipvs: Pass ipvs not net into sysctl_nat_icmp_send Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 75/84] ipvs: Pass ipvs into ip_vs_out Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 76/84] ipvs: Pass ipvs into ip_vs_in Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 77/84] ipvs: Pass ipvs into ip_vs_in_icmp and ip_vs_in_icmp_v6 Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 78/84] ipvs: Pass ipvs into ip_vs_out_icmp and ip_vs_out_icmp_v6 Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 79/84] ipvs: Pass ipvs through ip_vs_route_me_harder into sysctl_snat_reroute Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 80/84] ipvs: Remove net argument from ip_vs_tcp_conn_listen Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 81/84] ipvs: Pass ipvs not net to ip_vs_protocol_net_(init|cleanup) Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 82/84] ipvs: Remove skb_net Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 83/84] ipvs: Remove skb_sknet Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20  6:23       ` [PATCH next 84/84] ipvs: Pass ipvs into ip_vs_gather_frags Eric W. Biederman
2015-09-20  6:23         ` Eric W. Biederman
2015-09-20 14:38       ` [PATCH next 00/84] ipvs: Stop guessing the network namespace Julian Anastasov
2015-09-20 16:41         ` Eric W. Biederman
2015-09-21 18:01       ` [PATCH next 00/84] ipvs: Stop guessing the network namespace (take 2) Eric W. Biederman
2015-09-21 18:01         ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 01/84] ipvs: Hoist computation of ipvs earlier in sctp_conn_schedule Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 02/84] ipvs: Don't use current in proc_do_defense_mode Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-23  1:06           ` Simon Horman
2015-09-23  1:53             ` Eric W. Biederman
2015-09-24  1:38               ` Simon Horman
2015-09-21 18:01         ` [PATCH next 03/84] ipvs: Use state->net in the ipvs forward functions Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 04/84] ipvs: Store ipvs not net in struct ip_vs_conn Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 05/84] ipvs: Store ipvs not net in struct ip_vs_conn_param Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 06/84] ipvs: Pass ipvs not net to ip_vs_fill_conn Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 07/84] ipvs: Store ipvs not net in struct ip_vs_service Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 08/84] ipvs: Pass ipvs not net to ip_vs_svc_fwm_hashkey Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 09/84] ipvs: Pass ipvs not net to __ip_vs_svc_fwm_find Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 10/84] ipvs: Pass ipvs not net to ip_vs_svc_hashkey Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 11/84] ipvs: Pass ipvs not net to __ip_vs_service_find Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 12/84] ipvs: Pass ipvs not net to ip_vs_service_find Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 13/84] ipvs: Pass ipvs not net to ip_vs_has_real_service Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 14/84] ipvs: Pass ipvs not net to ip_vs_find_dest Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 15/84] ipvs: Pass ipvs not net to ip_vs_trash_cleanup Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 16/84] ipvs: Pass ipvs not net to __ip_vs_del_dest Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 17/84] ipvs: Pass ipvs not net to ip_vs_dest_trash_expire Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 18/84] ipvs: Cache ipvs in ip_vs_genl_set_cmd Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 19/84] ipvs: Pass ipvs not net to ip_vs_add_service Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 20/84] ipvs: Pass ipvs not net to ip_vs_flush Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 21/84] ipvs: Pass ipvs not net to ip_vs_service_net_cleanup Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:01         ` [PATCH next 22/84] ipvs: Pass ipvs not net to ip_vs_zero_all Eric W. Biederman
2015-09-21 18:01           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 23/84] ipvs: Cache ipvs in ip_vs_in_icmp and ip_vs_in_icmp_v6 Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 24/84] ipvs: Pass ipvs not net to ip_vs_proto_data_get Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 25/84] ipvs: Pass ipvs not net to ip_vs_set_timeout Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 26/84] ipvs: Pass ipvs not net to __ip_vs_get_service_entries Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 27/84] ipvs: Pass ipvs not net to __ip_vs_get_dest_entries Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 28/84] ipvs: Pass ipvs not net to __ip_vs_get_timeouts Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 29/84] ipvs: Pass ipvs not net to ip_vs_genl_parse_service Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 30/84] ipvs: Pass ipvs not net to ip_vs_genl_find_service Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 31/84] ipvs: Pass ipvs not net to ip_vs_genl_new_daemon Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 32/84] ipvs: Pass ipvs not net to ip_vs_genl_del_daemon Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 33/84] ipvs: Pass ipvs not net to start_sync_thread Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 34/84] ipvs: Pass ipvs not net to stop_sync_thread Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 35/84] ipvs: Pass ipvs not net to make_send_sock Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 36/84] ipvs: Pass ipvs not net to make_receive_sock Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 37/84] ipvs: Store ipvs not net in struct ip_vs_sync_thread_data Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 38/84] ipvs: Pass ipvs not net to ip_vs_process_message Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 39/84] ipvs: Pass ipvs not net to ip_vs_sync_conn_v0 Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 40/84] ipvs: Pass ipvs not net to ip_vs_sync_conn Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 41/84] ipvs: Pass ipvs not net to ip_vs_proc_conn Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 42/84] ipvs: Pass ipvs not net to ip_vs_proc_sync_conn Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 43/84] ipvs: Pass ipvs not net to ip_vs_sync_net_init Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 44/84] ipvs: Pass ipvs not net to ip_vs_sync_net_cleanup Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 45/84] ipvs: Pass ipvs not net to ip_vs_genl_set_config Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 46/84] ipvs: Pass ipvs not net to ip_vs_start_estimator aned ip_vs_stop_estimator Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 47/84] ipvs: Pass ipvs not net to ip_vs_random_drop_entry Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 48/84] ipvs: Pass ipvs not net to ip_vs_control_net_(init|cleanup)_sysctl Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 49/84] ipvs: Pass ipvs not net into ip_vs_control_net_(init|cleanup) Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 50/84] ipvs: Pass ipvs not net to estimation_timer Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 51/84] ipvs: Pass ipvs not net to ip_vs_estimator_net_init and ip_vs_estimator_cleanup Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 52/84] ipvs: Pass ipvs not net into register_app and unregister_app Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 53/84] ipvs: Pass ipvs not net into ip_vs_app_inc_new Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 54/84] ipvs: Pass ipvs not net to register_ip_vs_app_inc Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 55/84] ipvs: Pass ipvs not net to register_ip_vs_app and unregister_ip_vs_app Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 56/84] ipvs: Pass ipvs not net into ip_vs_app_inc_release Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 57/84] ipvs: Pass ipvs not net into ip_vs_app_net_init and ip_vs_app_net_cleanup Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 58/84] ipvs: Pass ipvs not net into [un]register_ip_vs_proto_netns Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 59/84] ipvs: Pass ipvs not net into init_netns and exit_netns Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 60/84] ipvs: Pass ipvs into ip_vs_conn_fill_param_proto Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 61/84] ipvs: Pass ipvs into .conn_in_get and ip_vs_conn_in_get_proto Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 62/84] ipvs: Pass ipvs into conn_out_get Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 63/84] ipvs: Pass ipvs not net to ip_vs_conn_hashkey Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 64/84] ipvs: Pass ipvs not net into ip_vs_conn_net_flush Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 65/84] ipvs: Pass ipvs not net into ip_vs_conn_net_init and ip_vs_conn_net_cleanup Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 66/84] ipvs: Pass ipvs into .conn_schedule and ip_vs_try_to_schedule Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 67/84] ipvs: Better derivation of ipvs in ip_vs_tunnel_xmit Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 68/84] ipvs: Pass ipvs into __ip_vs_get_out_rt Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 69/84] ipvs: Pass ipvs into __ip_vs_get_out_rt_v6 Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 70/84] ipvs: Pass ipvs into ensure_mtu_is adequate Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 71/84] ipvs: Better derivation of ipvs in ip_vs_in_stats and ip_vs_out_stats Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 72/84] ipvs: Wrap sysctl_cache_bypass and remove ifdefs in ip_vs_leave Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 73/84] ipvs: Simplify ipvs and net access " Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 74/84] ipvs: Pass ipvs not net into sysctl_nat_icmp_send Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 75/84] ipvs: Pass ipvs into ip_vs_out Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 76/84] ipvs: Pass ipvs into ip_vs_in Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 77/84] ipvs: Pass ipvs into ip_vs_in_icmp and ip_vs_in_icmp_v6 Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 78/84] ipvs: Pass ipvs into ip_vs_out_icmp and ip_vs_out_icmp_v6 Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 79/84] ipvs: Pass ipvs through ip_vs_route_me_harder into sysctl_snat_reroute Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 80/84] ipvs: Remove net argument from ip_vs_tcp_conn_listen Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 81/84] ipvs: Pass ipvs not net to ip_vs_protocol_net_(init|cleanup) Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:02         ` [PATCH next 82/84] ipvs: Remove skb_net Eric W. Biederman
2015-09-21 18:02           ` Eric W. Biederman
2015-09-21 18:03         ` [PATCH next 83/84] ipvs: Remove skb_sknet Eric W. Biederman
2015-09-21 18:03           ` Eric W. Biederman
2015-09-21 18:03         ` [PATCH next 84/84] ipvs: Pass ipvs into ip_vs_gather_frags Eric W. Biederman
2015-09-21 18:03           ` Eric W. Biederman
2015-09-22  7:22         ` [PATCH next 00/84] ipvs: Stop guessing the network namespace (take 2) Julian Anastasov
2015-09-22  8:50           ` Pablo Neira Ayuso
2015-09-23  0:17             ` Simon Horman
2015-09-23  9:16               ` Pablo Neira Ayuso
2015-09-25 20:01     ` [PATCH next 0/5] netfilter: Pass net into ip_route_me_harder Eric W. Biederman
2015-09-25 20:07       ` [PATCH next 1/5] ipv4: Push struct net down into nf_send_reset Eric W. Biederman
2015-09-25 20:07       ` [PATCH next 2/5] netfilter: Push struct net down into nf_afinfo.reroute Eric W. Biederman
2015-09-25 20:07       ` [PATCH next 3/5] netfilter: ipt_SYNPROXY: Pass snet into synproxy_send_tcp Eric W. Biederman
2015-09-25 20:07       ` [PATCH next 4/5] ipv4: Pass struct net into ip_route_me_harder Eric W. Biederman
2015-09-25 20:07       ` [PATCH next 5/5] ipv6: Pass struct net into ip6_route_me_harder Eric W. Biederman
2015-09-28  7:29       ` [PATCH next 0/5] netfilter: Pass net into ip_route_me_harder Nicolas Dichtel
2015-09-29 18:32       ` Pablo Neira Ayuso
2015-09-30 21:24       ` [PATCH net-next 0/6] net: Pass net through ip fragmention Eric W. Biederman
2015-09-30 21:25         ` [PATCH net-next 1/6] openvswitch: Pass net into ovs_vport_output Eric W. Biederman
2015-10-01  8:31           ` Nicolas Dichtel
2015-09-30 21:25         ` [PATCH net-next 2/6] openvswitch: Pass net into ovs_fragment Eric W. Biederman
2015-10-01  8:31           ` Nicolas Dichtel
2015-10-01 16:03             ` Eric W. Biederman
2015-10-01 22:14               ` Nicolas Dichtel
2015-09-30 21:25         ` [PATCH net-next 3/6] ipv4: Pass struct net through ip_fragment Eric W. Biederman
2015-09-30 21:25         ` [PATCH net-next 4/6] ipv6: Pass struct net through ip6_fragment Eric W. Biederman
2015-10-01  8:31           ` Nicolas Dichtel
2015-10-01 16:44             ` [PATCH net-next 7/6] ipv6: Add missing newline to __xfrm6_output_finish Eric W. Biederman
2015-09-30 21:25         ` [PATCH net-next 5/6] bridge: Remove br_nf_push_frag_xmit_sk Eric W. Biederman
2015-09-30 21:25         ` [PATCH net-next 6/6] openvswitch: Remove ovs_vport_output_sk Eric W. Biederman
2015-10-01  8:33         ` [PATCH net-next 0/6] net: Pass net through ip fragmention Nicolas Dichtel
2015-10-05 10:40         ` David Miller
2015-10-06 18:50         ` [PATCH net-next 00/15] net: Pass net through the output path Eric W. Biederman
2015-10-06 18:50           ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 01/15] ipv4: Fix ip_local_out_sk by passing the sk into __ip_local_out_sk Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-07 13:37             ` Sergei Shtylyov
2015-10-07 14:48             ` Nicolas Dichtel
2015-10-07 14:48               ` Nicolas Dichtel
2015-10-06 18:53           ` [PATCH net-next 02/15] xfrm: Only compute net once in xfrm_policy_queue_process Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 03/15] net: Pass net into dst_output and remove dst_output_okfn Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 04/15] dst: Pass a sk into .local_out Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 05/15] ipv4: Merge __ip_local_out and __ip_local_out_sk Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 06/15] ipv4: Merge ip_local_out and ip_local_out_sk Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-07 14:48             ` Nicolas Dichtel
2015-10-07 14:48               ` Nicolas Dichtel
2015-10-07 20:39               ` Eric W. Biederman
2015-10-07 20:39                 ` Eric W. Biederman
2015-10-08  9:38                 ` Nicolas Dichtel
2015-10-06 18:53           ` [PATCH net-next 07/15] ipv6: Merge __ip6_local_out and __ip6_local_out_sk Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 08/15] ipv6: Merge ip6_local_out and ip6_local_out_sk Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 09/15] ipv4: Cache net in iptunnel_xmit Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 10/15] ipv4: Cache net in ip_build_and_send_pkt and ip_queue_xmit Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 21:40             ` Eric Dumazet
2015-10-07  3:26               ` Eric W. Biederman
2015-10-07  3:48                 ` Eric Dumazet
2015-10-06 18:53           ` [PATCH net-next 11/15] ppp: Cache net in pptp_xmit Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 12/15] ipvlan: Cache net in ipvlan_process_v4_outbound and ipvlan_process_v6_outbound Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-07  1:19             ` Mahesh Bandewar
2015-10-07  1:24               ` Mahesh Bandewar
2015-10-06 18:53           ` [PATCH net-next 13/15] ipv4,ipv6: Pass net into __ip_local_out and __ip6_local_out Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 14/15] ipv4,ipv6: Pass net into ip_local_out and ip6_local_out Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-06 18:53           ` [PATCH net-next 15/15] dst: Pass net into dst->output Eric W. Biederman
2015-10-06 18:53             ` Eric W. Biederman
2015-10-07 21:46           ` [PATCH net-next 00/16] net: Pass net through the output path v2 Eric W. Biederman
2015-10-07 21:46             ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 01/16] ipv4: Fix ip_local_out_sk by passing the sk into __ip_local_out_sk Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 02/16] ipv4: Fix ip_queue_xmit to pass sk into ip_local_out_sk Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 03/16] xfrm: Only compute net once in xfrm_policy_queue_process Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 04/16] net: Pass net into dst_output and remove dst_output_okfn Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 05/16] dst: Pass a sk into .local_out Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 06/16] ipv4: Merge __ip_local_out and __ip_local_out_sk Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 07/16] ipv4: Merge ip_local_out and ip_local_out_sk Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 08/16] ipv6: Merge __ip6_local_out and __ip6_local_out_sk Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 09/16] ipv6: Merge ip6_local_out and ip6_local_out_sk Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 10/16] ipv4: Cache net in iptunnel_xmit Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 11/16] ipv4: Cache net in ip_build_and_send_pkt and ip_queue_xmit Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 12/16] ppp: Cache net in pptp_xmit Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 13/16] ipvlan: Cache net in ipvlan_process_v4_outbound and ipvlan_process_v6_outbound Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 14/16] ipv4,ipv6: Pass net into __ip_local_out and __ip6_local_out Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 15/16] ipv4,ipv6: Pass net into ip_local_out and ip6_local_out Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-07 21:48             ` [PATCH net-next 16/16] dst: Pass net into dst->output Eric W. Biederman
2015-10-07 21:48               ` Eric W. Biederman
2015-10-08  9:40             ` [PATCH net-next 00/16] net: Pass net through the output path v2 Nicolas Dichtel
2015-10-08  9:40               ` Nicolas Dichtel
2015-10-08 11:27             ` David Miller
2015-10-09 18:42             ` [PATCH net-next 0/3] net: Pass net into defragmentation Eric W. Biederman
2015-10-12  7:26               ` Nicolas Dichtel
2015-10-13  2:44               ` David Miller
2015-10-09 18:44             ` [PATCH net-next 1/3] ipv4: Only compute net once in ip_call_ra_chain Eric W. Biederman
2015-10-09 18:44             ` [PATCH net-next 2/3] ipv4: Pass struct net into ip_defrag and ip_check_defrag Eric W. Biederman
2015-10-12 20:11               ` Pablo Neira Ayuso
2015-10-09 18:44             ` [PATCH net-next 3/3] ipv6: Pass struct net into nf_ct_frag6_gather Eric W. Biederman
2015-10-12 20:12               ` Pablo Neira Ayuso

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1442604788-19718-4-git-send-email-ebiederm@xmission.com \
    --to=ebiederm@xmission.com \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    --cc=netfilter-devel@vger.kernel.org \
    --cc=nicolas.dichtel@6wind.com \
    --cc=pablo@netfilter.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.