netfilter-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT PULL nf-next-2.6] IPVS
@ 2011-02-07  9:19 Simon Horman
  2011-02-09  7:06 ` Patrick McHardy
  0 siblings, 1 reply; 17+ messages in thread
From: Simon Horman @ 2011-02-07  9:19 UTC (permalink / raw)
  To: netdev, netfilter-devel, netfilter, lvs-devel
  Cc: Julian Anastasov, Hans Schillstrom, Dan Carpenter,
	Patrick McHardy

Hi Patrick,

please consider pulling 
git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
to get a precedence bug fix from Dan Carpenter.

 net/netfilter/ipvs/ip_vs_sync.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-02-07  9:19 Simon Horman
@ 2011-02-09  7:06 ` Patrick McHardy
  0 siblings, 0 replies; 17+ messages in thread
From: Patrick McHardy @ 2011-02-09  7:06 UTC (permalink / raw)
  To: Simon Horman
  Cc: netdev, netfilter-devel, netfilter, lvs-devel, Julian Anastasov,
	Hans Schillstrom, Dan Carpenter

Am 07.02.2011 10:19, schrieb Simon Horman:
> Hi Patrick,
> 
> please consider pulling 
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
> to get a precedence bug fix from Dan Carpenter.
> 
>  net/netfilter/ipvs/ip_vs_sync.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)

Pulled, thanks Simon.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [GIT PULL nf-next-2.6] IPVS
@ 2011-02-16  6:04 Simon Horman
  2011-02-16  6:04 ` [PATCH 1/3] ipvs: fix timer in get_curr_sync_buff Simon Horman
                   ` (3 more replies)
  0 siblings, 4 replies; 17+ messages in thread
From: Simon Horman @ 2011-02-16  6:04 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Julian Anastasov, Patrick Schaaf, Patrick McHardy

Hi Patrick,

please consider pulling
git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
go get:

	* Removal of unused ICMP code by Julian
	* More informative "no destination available" messages
	  by Patrick Schaaf
	* Fix to buffering of synchronisation messages
	  by Tinggong Wang and Julian

 include/net/ip_vs.h              |    2 ++
 net/netfilter/ipvs/ip_vs_core.c  |   28 +++-------------------------
 net/netfilter/ipvs/ip_vs_lblc.c  |    2 +-
 net/netfilter/ipvs/ip_vs_lblcr.c |    2 +-
 net/netfilter/ipvs/ip_vs_lc.c    |    2 +-
 net/netfilter/ipvs/ip_vs_nq.c    |    2 +-
 net/netfilter/ipvs/ip_vs_rr.c    |    2 +-
 net/netfilter/ipvs/ip_vs_sched.c |   25 +++++++++++++++++++++++++
 net/netfilter/ipvs/ip_vs_sed.c   |    2 +-
 net/netfilter/ipvs/ip_vs_sh.c    |    2 +-
 net/netfilter/ipvs/ip_vs_sync.c  |    4 ++--
 net/netfilter/ipvs/ip_vs_wlc.c   |    2 +-
 net/netfilter/ipvs/ip_vs_wrr.c   |   14 ++++++++------
 13 files changed, 48 insertions(+), 41 deletions(-)


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [PATCH 1/3] ipvs: fix timer in get_curr_sync_buff
  2011-02-16  6:04 [GIT PULL nf-next-2.6] IPVS Simon Horman
@ 2011-02-16  6:04 ` Simon Horman
  2011-02-16  6:04 ` [PATCH 2/3] ipvs: remove extra lookups for ICMP packets Simon Horman
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 17+ messages in thread
From: Simon Horman @ 2011-02-16  6:04 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Julian Anastasov, Patrick Schaaf, Patrick McHardy, Tinggong Wang,
	Simon Horman

From: Tinggong Wang <wangtinggong@gmail.com>

 	Fix get_curr_sync_buff to keep buffer for 2 seconds
as intended, not just for the current jiffie. By this way
we will sync more connection structures with single packet.

Signed-off-by: Tinggong Wang <wangtinggong@gmail.com>
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
 net/netfilter/ipvs/ip_vs_sync.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/net/netfilter/ipvs/ip_vs_sync.c b/net/netfilter/ipvs/ip_vs_sync.c
index d1b7298..fecf24d 100644
--- a/net/netfilter/ipvs/ip_vs_sync.c
+++ b/net/netfilter/ipvs/ip_vs_sync.c
@@ -374,8 +374,8 @@ get_curr_sync_buff(struct netns_ipvs *ipvs, unsigned long time)
 	struct ip_vs_sync_buff *sb;
 
 	spin_lock_bh(&ipvs->sync_buff_lock);
-	if (ipvs->sync_buff && (time == 0 ||
-	    time_before(jiffies - ipvs->sync_buff->firstuse, time))) {
+	if (ipvs->sync_buff &&
+	    time_after_eq(jiffies - ipvs->sync_buff->firstuse, time)) {
 		sb = ipvs->sync_buff;
 		ipvs->sync_buff = NULL;
 	} else
-- 
1.7.2.3


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 2/3] ipvs: remove extra lookups for ICMP packets
  2011-02-16  6:04 [GIT PULL nf-next-2.6] IPVS Simon Horman
  2011-02-16  6:04 ` [PATCH 1/3] ipvs: fix timer in get_curr_sync_buff Simon Horman
@ 2011-02-16  6:04 ` Simon Horman
  2011-02-16  6:04 ` [PATCH 3/3] ipvs: make "no destination available" message more informative Simon Horman
  2011-02-16 13:19 ` [GIT PULL nf-next-2.6] IPVS Patrick McHardy
  3 siblings, 0 replies; 17+ messages in thread
From: Simon Horman @ 2011-02-16  6:04 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Julian Anastasov, Patrick Schaaf, Patrick McHardy, Simon Horman

From: Julian Anastasov <ja@ssi.bg>

 	Remove code that should not be called anymore.
Now when ip_vs_out handles replies for local clients at
LOCAL_IN hook we do not need to call conn_out_get and
handle_response_icmp from ip_vs_in_icmp* because such
lookups were already performed for the ICMP packet and no
connection was found.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
 net/netfilter/ipvs/ip_vs_core.c |   28 +++-------------------------
 1 files changed, 3 insertions(+), 25 deletions(-)

diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
index 4d06617..2d1f932 100644
--- a/net/netfilter/ipvs/ip_vs_core.c
+++ b/net/netfilter/ipvs/ip_vs_core.c
@@ -729,7 +729,7 @@ void ip_vs_nat_icmp_v6(struct sk_buff *skb, struct ip_vs_protocol *pp,
 #endif
 
 /* Handle relevant response ICMP messages - forward to the right
- * destination host. Used for NAT and local client.
+ * destination host.
  */
 static int handle_response_icmp(int af, struct sk_buff *skb,
 				union nf_inet_addr *snet,
@@ -979,7 +979,6 @@ static inline int is_tcp_reset(const struct sk_buff *skb, int nh_len)
 }
 
 /* Handle response packets: rewrite addresses and send away...
- * Used for NAT and local client.
  */
 static unsigned int
 handle_response(int af, struct sk_buff *skb, struct ip_vs_proto_data *pd,
@@ -1280,7 +1279,6 @@ ip_vs_in_icmp(struct sk_buff *skb, int *related, unsigned int hooknum)
 	struct ip_vs_protocol *pp;
 	struct ip_vs_proto_data *pd;
 	unsigned int offset, ihl, verdict;
-	union nf_inet_addr snet;
 
 	*related = 1;
 
@@ -1339,17 +1337,8 @@ ip_vs_in_icmp(struct sk_buff *skb, int *related, unsigned int hooknum)
 	ip_vs_fill_iphdr(AF_INET, cih, &ciph);
 	/* The embedded headers contain source and dest in reverse order */
 	cp = pp->conn_in_get(AF_INET, skb, &ciph, offset, 1);
-	if (!cp) {
-		/* The packet could also belong to a local client */
-		cp = pp->conn_out_get(AF_INET, skb, &ciph, offset, 1);
-		if (cp) {
-			snet.ip = iph->saddr;
-			return handle_response_icmp(AF_INET, skb, &snet,
-						    cih->protocol, cp, pp,
-						    offset, ihl);
-		}
+	if (!cp)
 		return NF_ACCEPT;
-	}
 
 	verdict = NF_DROP;
 
@@ -1395,7 +1384,6 @@ ip_vs_in_icmp_v6(struct sk_buff *skb, int *related, unsigned int hooknum)
 	struct ip_vs_protocol *pp;
 	struct ip_vs_proto_data *pd;
 	unsigned int offset, verdict;
-	union nf_inet_addr snet;
 	struct rt6_info *rt;
 
 	*related = 1;
@@ -1455,18 +1443,8 @@ ip_vs_in_icmp_v6(struct sk_buff *skb, int *related, unsigned int hooknum)
 	ip_vs_fill_iphdr(AF_INET6, cih, &ciph);
 	/* The embedded headers contain source and dest in reverse order */
 	cp = pp->conn_in_get(AF_INET6, skb, &ciph, offset, 1);
-	if (!cp) {
-		/* The packet could also belong to a local client */
-		cp = pp->conn_out_get(AF_INET6, skb, &ciph, offset, 1);
-		if (cp) {
-			ipv6_addr_copy(&snet.in6, &iph->saddr);
-			return handle_response_icmp(AF_INET6, skb, &snet,
-						    cih->nexthdr,
-						    cp, pp, offset,
-						    sizeof(struct ipv6hdr));
-		}
+	if (!cp)
 		return NF_ACCEPT;
-	}
 
 	verdict = NF_DROP;
 
-- 
1.7.2.3


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* [PATCH 3/3] ipvs: make "no destination available" message more informative
  2011-02-16  6:04 [GIT PULL nf-next-2.6] IPVS Simon Horman
  2011-02-16  6:04 ` [PATCH 1/3] ipvs: fix timer in get_curr_sync_buff Simon Horman
  2011-02-16  6:04 ` [PATCH 2/3] ipvs: remove extra lookups for ICMP packets Simon Horman
@ 2011-02-16  6:04 ` Simon Horman
  2011-02-16 13:19 ` [GIT PULL nf-next-2.6] IPVS Patrick McHardy
  3 siblings, 0 replies; 17+ messages in thread
From: Simon Horman @ 2011-02-16  6:04 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Julian Anastasov, Patrick Schaaf, Patrick McHardy, Simon Horman

From: Patrick Schaaf <netdev@bof.de>

When IP_VS schedulers do not find a destination, they output a terse
"WLC: no destination available" message through kernel syslog, which I
can not only make sense of because syslog puts them in a logfile
together with keepalived checker results.

This patch makes the output a bit more informative, by telling you which
virtual service failed to find a destination.

Example output:

kernel: [1539214.552233] IPVS: wlc: TCP 192.168.8.30:22 - no destination available
kernel: [1539299.674418] IPVS: wlc: FWM 22 0x00000016 - no destination available

I have tested the code for IPv4 and FWM services, as you can see from
the example; I do not have an IPv6 setup to test the third code path
with.

To avoid code duplication, I put a new function ip_vs_scheduler_err()
into ip_vs_sched.c, and use that from the schedulers instead of calling
IP_VS_ERR_RL directly.

Signed-off-by: Patrick Schaaf <netdev@bof.de>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
 include/net/ip_vs.h              |    2 ++
 net/netfilter/ipvs/ip_vs_lblc.c  |    2 +-
 net/netfilter/ipvs/ip_vs_lblcr.c |    2 +-
 net/netfilter/ipvs/ip_vs_lc.c    |    2 +-
 net/netfilter/ipvs/ip_vs_nq.c    |    2 +-
 net/netfilter/ipvs/ip_vs_rr.c    |    2 +-
 net/netfilter/ipvs/ip_vs_sched.c |   25 +++++++++++++++++++++++++
 net/netfilter/ipvs/ip_vs_sed.c   |    2 +-
 net/netfilter/ipvs/ip_vs_sh.c    |    2 +-
 net/netfilter/ipvs/ip_vs_wlc.c   |    2 +-
 net/netfilter/ipvs/ip_vs_wrr.c   |   14 ++++++++------
 11 files changed, 43 insertions(+), 14 deletions(-)

diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h
index 5d75fea..9399549 100644
--- a/include/net/ip_vs.h
+++ b/include/net/ip_vs.h
@@ -1019,6 +1019,8 @@ ip_vs_schedule(struct ip_vs_service *svc, struct sk_buff *skb,
 extern int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb,
 			struct ip_vs_proto_data *pd);
 
+extern void ip_vs_scheduler_err(struct ip_vs_service *svc, const char *msg);
+
 
 /*
  *      IPVS control data and functions (from ip_vs_ctl.c)
diff --git a/net/netfilter/ipvs/ip_vs_lblc.c b/net/netfilter/ipvs/ip_vs_lblc.c
index 00b5ffa..4a9c8cd 100644
--- a/net/netfilter/ipvs/ip_vs_lblc.c
+++ b/net/netfilter/ipvs/ip_vs_lblc.c
@@ -510,7 +510,7 @@ ip_vs_lblc_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 	/* No cache entry or it is invalid, time to schedule */
 	dest = __ip_vs_lblc_schedule(svc);
 	if (!dest) {
-		IP_VS_ERR_RL("LBLC: no destination available\n");
+		ip_vs_scheduler_err(svc, "no destination available");
 		return NULL;
 	}
 
diff --git a/net/netfilter/ipvs/ip_vs_lblcr.c b/net/netfilter/ipvs/ip_vs_lblcr.c
index bfa25f1..bd329b1 100644
--- a/net/netfilter/ipvs/ip_vs_lblcr.c
+++ b/net/netfilter/ipvs/ip_vs_lblcr.c
@@ -692,7 +692,7 @@ ip_vs_lblcr_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 		/* The cache entry is invalid, time to schedule */
 		dest = __ip_vs_lblcr_schedule(svc);
 		if (!dest) {
-			IP_VS_ERR_RL("LBLCR: no destination available\n");
+			ip_vs_scheduler_err(svc, "no destination available");
 			read_unlock(&svc->sched_lock);
 			return NULL;
 		}
diff --git a/net/netfilter/ipvs/ip_vs_lc.c b/net/netfilter/ipvs/ip_vs_lc.c
index 4f69db1..6063800 100644
--- a/net/netfilter/ipvs/ip_vs_lc.c
+++ b/net/netfilter/ipvs/ip_vs_lc.c
@@ -70,7 +70,7 @@ ip_vs_lc_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 	}
 
 	if (!least)
-		IP_VS_ERR_RL("LC: no destination available\n");
+		ip_vs_scheduler_err(svc, "no destination available");
 	else
 		IP_VS_DBG_BUF(6, "LC: server %s:%u activeconns %d "
 			      "inactconns %d\n",
diff --git a/net/netfilter/ipvs/ip_vs_nq.c b/net/netfilter/ipvs/ip_vs_nq.c
index c413e18..984d9c1 100644
--- a/net/netfilter/ipvs/ip_vs_nq.c
+++ b/net/netfilter/ipvs/ip_vs_nq.c
@@ -99,7 +99,7 @@ ip_vs_nq_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 	}
 
 	if (!least) {
-		IP_VS_ERR_RL("NQ: no destination available\n");
+		ip_vs_scheduler_err(svc, "no destination available");
 		return NULL;
 	}
 
diff --git a/net/netfilter/ipvs/ip_vs_rr.c b/net/netfilter/ipvs/ip_vs_rr.c
index e210f37..c49b388 100644
--- a/net/netfilter/ipvs/ip_vs_rr.c
+++ b/net/netfilter/ipvs/ip_vs_rr.c
@@ -72,7 +72,7 @@ ip_vs_rr_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 		q = q->next;
 	} while (q != p);
 	write_unlock(&svc->sched_lock);
-	IP_VS_ERR_RL("RR: no destination available\n");
+	ip_vs_scheduler_err(svc, "no destination available");
 	return NULL;
 
   out:
diff --git a/net/netfilter/ipvs/ip_vs_sched.c b/net/netfilter/ipvs/ip_vs_sched.c
index 076ebe0..08dbdd5 100644
--- a/net/netfilter/ipvs/ip_vs_sched.c
+++ b/net/netfilter/ipvs/ip_vs_sched.c
@@ -29,6 +29,7 @@
 
 #include <net/ip_vs.h>
 
+EXPORT_SYMBOL(ip_vs_scheduler_err);
 /*
  *  IPVS scheduler list
  */
@@ -146,6 +147,30 @@ void ip_vs_scheduler_put(struct ip_vs_scheduler *scheduler)
 		module_put(scheduler->module);
 }
 
+/*
+ * Common error output helper for schedulers
+ */
+
+void ip_vs_scheduler_err(struct ip_vs_service *svc, const char *msg)
+{
+	if (svc->fwmark) {
+		IP_VS_ERR_RL("%s: FWM %u 0x%08X - %s\n",
+			     svc->scheduler->name, svc->fwmark,
+			     svc->fwmark, msg);
+#ifdef CONFIG_IP_VS_IPV6
+	} else if (svc->af == AF_INET6) {
+		IP_VS_ERR_RL("%s: %s [%pI6]:%d - %s\n",
+			     svc->scheduler->name,
+			     ip_vs_proto_name(svc->protocol),
+			     &svc->addr.in6, ntohs(svc->port), msg);
+#endif
+	} else {
+		IP_VS_ERR_RL("%s: %s %pI4:%d - %s\n",
+			     svc->scheduler->name,
+			     ip_vs_proto_name(svc->protocol),
+			     &svc->addr.ip, ntohs(svc->port), msg);
+	}
+}
 
 /*
  *  Register a scheduler in the scheduler list
diff --git a/net/netfilter/ipvs/ip_vs_sed.c b/net/netfilter/ipvs/ip_vs_sed.c
index 1ab75a9..89ead24 100644
--- a/net/netfilter/ipvs/ip_vs_sed.c
+++ b/net/netfilter/ipvs/ip_vs_sed.c
@@ -87,7 +87,7 @@ ip_vs_sed_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 			goto nextstage;
 		}
 	}
-	IP_VS_ERR_RL("SED: no destination available\n");
+	ip_vs_scheduler_err(svc, "no destination available");
 	return NULL;
 
 	/*
diff --git a/net/netfilter/ipvs/ip_vs_sh.c b/net/netfilter/ipvs/ip_vs_sh.c
index e6cc174..b5e2556 100644
--- a/net/netfilter/ipvs/ip_vs_sh.c
+++ b/net/netfilter/ipvs/ip_vs_sh.c
@@ -223,7 +223,7 @@ ip_vs_sh_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 	    || !(dest->flags & IP_VS_DEST_F_AVAILABLE)
 	    || atomic_read(&dest->weight) <= 0
 	    || is_overloaded(dest)) {
-		IP_VS_ERR_RL("SH: no destination available\n");
+		ip_vs_scheduler_err(svc, "no destination available");
 		return NULL;
 	}
 
diff --git a/net/netfilter/ipvs/ip_vs_wlc.c b/net/netfilter/ipvs/ip_vs_wlc.c
index bbddfdb..fdf0f58 100644
--- a/net/netfilter/ipvs/ip_vs_wlc.c
+++ b/net/netfilter/ipvs/ip_vs_wlc.c
@@ -75,7 +75,7 @@ ip_vs_wlc_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 			goto nextstage;
 		}
 	}
-	IP_VS_ERR_RL("WLC: no destination available\n");
+	ip_vs_scheduler_err(svc, "no destination available");
 	return NULL;
 
 	/*
diff --git a/net/netfilter/ipvs/ip_vs_wrr.c b/net/netfilter/ipvs/ip_vs_wrr.c
index 30db633..1ef41f5 100644
--- a/net/netfilter/ipvs/ip_vs_wrr.c
+++ b/net/netfilter/ipvs/ip_vs_wrr.c
@@ -147,8 +147,9 @@ ip_vs_wrr_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 
 			if (mark->cl == mark->cl->next) {
 				/* no dest entry */
-				IP_VS_ERR_RL("WRR: no destination available: "
-					     "no destinations present\n");
+				ip_vs_scheduler_err(svc,
+					"no destination available: "
+					"no destinations present");
 				dest = NULL;
 				goto out;
 			}
@@ -162,8 +163,8 @@ ip_vs_wrr_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 				 */
 				if (mark->cw == 0) {
 					mark->cl = &svc->destinations;
-					IP_VS_ERR_RL("WRR: no destination "
-						     "available\n");
+					ip_vs_scheduler_err(svc,
+						"no destination available");
 					dest = NULL;
 					goto out;
 				}
@@ -185,8 +186,9 @@ ip_vs_wrr_schedule(struct ip_vs_service *svc, const struct sk_buff *skb)
 			/* back to the start, and no dest is found.
 			   It is only possible when all dests are OVERLOADED */
 			dest = NULL;
-			IP_VS_ERR_RL("WRR: no destination available: "
-				     "all destinations are overloaded\n");
+			ip_vs_scheduler_err(svc,
+				"no destination available: "
+				"all destinations are overloaded");
 			goto out;
 		}
 	}
-- 
1.7.2.3


^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-02-16  6:04 [GIT PULL nf-next-2.6] IPVS Simon Horman
                   ` (2 preceding siblings ...)
  2011-02-16  6:04 ` [PATCH 3/3] ipvs: make "no destination available" message more informative Simon Horman
@ 2011-02-16 13:19 ` Patrick McHardy
  3 siblings, 0 replies; 17+ messages in thread
From: Patrick McHardy @ 2011-02-16 13:19 UTC (permalink / raw)
  To: Simon Horman
  Cc: lvs-devel, netdev, netfilter-devel, netfilter, Julian Anastasov,
	Patrick Schaaf

On 16.02.2011 07:04, Simon Horman wrote:
> Hi Patrick,
> 
> please consider pulling
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
> go get:
> 
> 	* Removal of unused ICMP code by Julian
> 	* More informative "no destination available" messages
> 	  by Patrick Schaaf
> 	* Fix to buffering of synchronisation messages
> 	  by Tinggong Wang and Julian
> 

Pulled, thanks Simon.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [GIT PULL nf-next-2.6] IPVS
@ 2011-02-25  2:43 Simon Horman
  2011-02-27 15:25 ` Patrick McHardy
  0 siblings, 1 reply; 17+ messages in thread
From: Simon Horman @ 2011-02-25  2:43 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Changli Gao, Wensong Zhang, Julian Anastasov, Patrick McHardy,
	Simon Horman

Hi Patrick,

please consider pulling
git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
go get the following changes by Changli.

      ipvs: use hlist instead of list
      ipvs: use enum to instead of magic numbers
      ipvs: unify the formula to estimate the overhead of processing connections

 include/net/ip_vs.h              |   16 +++++++++++-
 net/netfilter/ipvs/ip_vs_conn.c  |   52 +++++++++++++++++++++----------------
 net/netfilter/ipvs/ip_vs_lblc.c  |   13 ++-------
 net/netfilter/ipvs/ip_vs_lblcr.c |   25 +++++-------------
 net/netfilter/ipvs/ip_vs_lc.c    |   18 +------------
 net/netfilter/ipvs/ip_vs_wlc.c   |   20 +-------------
 net/netfilter/ipvs/ip_vs_xmit.c  |   41 +++++++++++++++++++----------
 7 files changed, 84 insertions(+), 101 deletions(-)


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-02-25  2:43 Simon Horman
@ 2011-02-27 15:25 ` Patrick McHardy
  0 siblings, 0 replies; 17+ messages in thread
From: Patrick McHardy @ 2011-02-27 15:25 UTC (permalink / raw)
  To: Simon Horman
  Cc: lvs-devel, netdev, netfilter-devel, netfilter, Changli Gao,
	Wensong Zhang, Julian Anastasov

On 25.02.2011 03:43, Simon Horman wrote:
> Hi Patrick,
> 
> please consider pulling
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
> go get the following changes by Changli.
> 
>       ipvs: use hlist instead of list
>       ipvs: use enum to instead of magic numbers
>       ipvs: unify the formula to estimate the overhead of processing connections

Pulled, thanks Simon.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [GIT PULL nf-next-2.6] IPVS
@ 2011-03-13 22:44 Simon Horman
  2011-03-14 18:17 ` Patrick McHardy
  0 siblings, 1 reply; 17+ messages in thread
From: Simon Horman @ 2011-03-13 22:44 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Patrick McHardy, Hans Schillstrom, Julian Anastasov, Simon Horman

Hi Patrick,

please consider pulling
git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
to get the following changes.

Jesper Juhl (1):
      Fix variable assignment in ip_vs_notrack

Julian Anastasov (2):
      ipvs: avoid lookup for fwmark 0
      ipvs: remove _bh from percpu stats reading

Shan Wei (1):
      netfilter:ipvs: use kmemdup

 include/net/ip_vs.h               |    2 +-
 net/netfilter/ipvs/ip_vs_ctl.c    |    8 +++++---
 net/netfilter/ipvs/ip_vs_est.c    |    8 ++++----
 net/netfilter/ipvs/ip_vs_pe_sip.c |    9 ++++-----
 net/netfilter/ipvs/ip_vs_sync.c   |    3 +--
 5 files changed, 15 insertions(+), 15 deletions(-)

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [GIT PULL nf-next-2.6] IPVS
@ 2011-03-14  9:06 Simon Horman
  0 siblings, 0 replies; 17+ messages in thread
From: Simon Horman @ 2011-03-14  9:06 UTC (permalink / raw)
  To: netdev, netfilter-devel, netfilter, lvs-devel
  Cc: Eric Dumazet, Julian Anastasov, Hans Schillstrom

please consider pulling
git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
to get the following changes.

This supersedes the pull request that I sent this morning -
it comprises the first 4 patches in this request.

Sorry for letting this get a bit long, Julian and I were
working on patches that conflicted with each other. But regardless,
I should have done something about getting a request to you earlier.


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-03-13 22:44 Simon Horman
@ 2011-03-14 18:17 ` Patrick McHardy
  2011-03-14 23:13   ` Simon Horman
  0 siblings, 1 reply; 17+ messages in thread
From: Patrick McHardy @ 2011-03-14 18:17 UTC (permalink / raw)
  To: Simon Horman
  Cc: lvs-devel, netdev, netfilter-devel, netfilter, Hans Schillstrom,
	Julian Anastasov

On 13.03.2011 23:44, Simon Horman wrote:
> Hi Patrick,
> 
> please consider pulling
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
> to get the following changes.
> 
> Jesper Juhl (1):
>       Fix variable assignment in ip_vs_notrack
> 
> Julian Anastasov (2):
>       ipvs: avoid lookup for fwmark 0
>       ipvs: remove _bh from percpu stats reading
> 
> Shan Wei (1):
>       netfilter:ipvs: use kmemdup
> 
>  include/net/ip_vs.h               |    2 +-
>  net/netfilter/ipvs/ip_vs_ctl.c    |    8 +++++---
>  net/netfilter/ipvs/ip_vs_est.c    |    8 ++++----
>  net/netfilter/ipvs/ip_vs_pe_sip.c |    9 ++++-----
>  net/netfilter/ipvs/ip_vs_sync.c   |    3 +--
>  5 files changed, 15 insertions(+), 15 deletions(-)

The pull contained quite a lot of other changes. I'm undoing the
pull for now, please resubmit the patches you actually want me to
pull. Thanks!

Jesper Juhl (1):
      Fix variable assignment in ip_vs_notrack

Julian Anastasov (8):
      ipvs: avoid lookup for fwmark 0
      ipvs: remove _bh from percpu stats reading
      ipvs: move struct netns_ipvs
      ipvs: reorganize tot_stats
      ipvs: properly zero stats and rates
      ipvs: remove unused seqcount stats
      ipvs: optimize rates reading
      ipvs: rename estimator functions

Patrick McHardy (1):
      Merge branch 'master' of git://git.kernel.org/.../horms/lvs-test-2.6

Shan Wei (1):
      netfilter:ipvs: use kmemdup

Simon Horman (14):
      IPVS: Add ip_vs_route_me_harder()
      IPVS: Add sysctl_snat_reroute()
      IPVS: Add sysctl_nat_icmp_send()
      IPVS: Add {sysctl_sync_threshold,period}()
      IPVS: Add sysctl_sync_ver()
      IPVS: Add sysctl_expire_nodest_conn()
      IPVS: Add expire_quiescent_template()
      IPVS: Conditinally use sysctl_lblc{r}_expiration
      IPVS: ip_vs_todrop() becomes a noop when CONFIG_SYSCTL is undefined
      IPVS: Conditional ip_vs_conntrack_enabled()
      IPVS: Minimise ip_vs_leave when CONFIG_SYSCTL is undefined
      IPVS: Conditionally define and use ip_vs_lblc{r}_table
      IPVS: Add __ip_vs_control_{init,cleanup}_sysctl()
      IPVS: Conditionally include sysctl members of struct netns_ipvs

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-03-14 18:17 ` Patrick McHardy
@ 2011-03-14 23:13   ` Simon Horman
  0 siblings, 0 replies; 17+ messages in thread
From: Simon Horman @ 2011-03-14 23:13 UTC (permalink / raw)
  To: Patrick McHardy
  Cc: lvs-devel, netdev, netfilter-devel, netfilter, Hans Schillstrom,
	Julian Anastasov

On Mon, Mar 14, 2011 at 07:17:34PM +0100, Patrick McHardy wrote:
> On 13.03.2011 23:44, Simon Horman wrote:
> > Hi Patrick,
> > 
> > please consider pulling
> > git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git master
> > to get the following changes.
> > 
> > Jesper Juhl (1):
> >       Fix variable assignment in ip_vs_notrack
> > 
> > Julian Anastasov (2):
> >       ipvs: avoid lookup for fwmark 0
> >       ipvs: remove _bh from percpu stats reading
> > 
> > Shan Wei (1):
> >       netfilter:ipvs: use kmemdup
> > 
> >  include/net/ip_vs.h               |    2 +-
> >  net/netfilter/ipvs/ip_vs_ctl.c    |    8 +++++---
> >  net/netfilter/ipvs/ip_vs_est.c    |    8 ++++----
> >  net/netfilter/ipvs/ip_vs_pe_sip.c |    9 ++++-----
> >  net/netfilter/ipvs/ip_vs_sync.c   |    3 +--
> >  5 files changed, 15 insertions(+), 15 deletions(-)
> 
> The pull contained quite a lot of other changes. I'm undoing the
> pull for now, please resubmit the patches you actually want me to
> pull. Thanks!

Sorry about that. I will double check things but
the list below looks like the second request that I sent out
yesterday.

> 
> Jesper Juhl (1):
>       Fix variable assignment in ip_vs_notrack
> 
> Julian Anastasov (8):
>       ipvs: avoid lookup for fwmark 0
>       ipvs: remove _bh from percpu stats reading
>       ipvs: move struct netns_ipvs
>       ipvs: reorganize tot_stats
>       ipvs: properly zero stats and rates
>       ipvs: remove unused seqcount stats
>       ipvs: optimize rates reading
>       ipvs: rename estimator functions
> 
> Patrick McHardy (1):
>       Merge branch 'master' of git://git.kernel.org/.../horms/lvs-test-2.6
> 
> Shan Wei (1):
>       netfilter:ipvs: use kmemdup
> 
> Simon Horman (14):
>       IPVS: Add ip_vs_route_me_harder()
>       IPVS: Add sysctl_snat_reroute()
>       IPVS: Add sysctl_nat_icmp_send()
>       IPVS: Add {sysctl_sync_threshold,period}()
>       IPVS: Add sysctl_sync_ver()
>       IPVS: Add sysctl_expire_nodest_conn()
>       IPVS: Add expire_quiescent_template()
>       IPVS: Conditinally use sysctl_lblc{r}_expiration
>       IPVS: ip_vs_todrop() becomes a noop when CONFIG_SYSCTL is undefined
>       IPVS: Conditional ip_vs_conntrack_enabled()
>       IPVS: Minimise ip_vs_leave when CONFIG_SYSCTL is undefined
>       IPVS: Conditionally define and use ip_vs_lblc{r}_table
>       IPVS: Add __ip_vs_control_{init,cleanup}_sysctl()
>       IPVS: Conditionally include sysctl members of struct netns_ipvs
> 

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [GIT PULL nf-next-2.6] IPVS
@ 2011-03-15  5:27 Simon Horman
  2011-03-15 12:16 ` Patrick McHardy
  0 siblings, 1 reply; 17+ messages in thread
From: Simon Horman @ 2011-03-15  5:27 UTC (permalink / raw)
  To: netdev, netfilter-devel, netfilter, lvs-devel
  Cc: Eric Dumazet, Julian Anastasov, Hans Schillstrom, Patrick McHardy

Hi Patrick,

please consider pulling
git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git for-patrick
to get the changes listed below.

This replaces the pull requests that I sent yesterday, sorry for messing
that up.

Also, sorry for letting the number of patches grow so much, Julian and I
were working on patches that conflicted with each other. But regardless, I
should have done something about getting a request to you earlier.

Jesper Juhl (1):
      IPVS: Fix variable assignment in ip_vs_notrack

Julian Anastasov (8):
      ipvs: avoid lookup for fwmark 0
      ipvs: remove _bh from percpu stats reading
      ipvs: move struct netns_ipvs
      ipvs: reorganize tot_stats
      ipvs: properly zero stats and rates
      ipvs: remove unused seqcount stats
      ipvs: optimize rates reading
      ipvs: rename estimator functions

Shan Wei (1):
      netfilter:ipvs: use kmemdup

Simon Horman (14):
      IPVS: Add ip_vs_route_me_harder()
      IPVS: Add sysctl_snat_reroute()
      IPVS: Add sysctl_nat_icmp_send()
      IPVS: Add {sysctl_sync_threshold,period}()
      IPVS: Add sysctl_sync_ver()
      IPVS: Add sysctl_expire_nodest_conn()
      IPVS: Add expire_quiescent_template()
      IPVS: Conditinally use sysctl_lblc{r}_expiration
      IPVS: ip_vs_todrop() becomes a noop when CONFIG_SYSCTL is undefined
      IPVS: Conditional ip_vs_conntrack_enabled()
      IPVS: Minimise ip_vs_leave when CONFIG_SYSCTL is undefined
      IPVS: Conditionally define and use ip_vs_lblc{r}_table
      IPVS: Add __ip_vs_control_{init,cleanup}_sysctl()
      IPVS: Conditionally include sysctl members of struct netns_ipvs

 include/net/ip_vs.h               |  198 ++++++++++++++++++++++++++---
 include/net/net_namespace.h       |    2 +-
 include/net/netns/ip_vs.h         |  143 ---------------------
 net/netfilter/ipvs/ip_vs_conn.c   |   13 ++-
 net/netfilter/ipvs/ip_vs_core.c   |  104 +++++++++------
 net/netfilter/ipvs/ip_vs_ctl.c    |  256 ++++++++++++++++++++++---------------
 net/netfilter/ipvs/ip_vs_est.c    |   63 ++++-----
 net/netfilter/ipvs/ip_vs_lblc.c   |   31 ++++-
 net/netfilter/ipvs/ip_vs_lblcr.c  |   35 ++++--
 net/netfilter/ipvs/ip_vs_pe_sip.c |    9 +-
 net/netfilter/ipvs/ip_vs_sync.c   |   11 +-
 11 files changed, 492 insertions(+), 373 deletions(-)
 delete mode 100644 include/net/netns/ip_vs.h

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-03-15  5:27 Simon Horman
@ 2011-03-15 12:16 ` Patrick McHardy
  0 siblings, 0 replies; 17+ messages in thread
From: Patrick McHardy @ 2011-03-15 12:16 UTC (permalink / raw)
  To: Simon Horman
  Cc: netdev, netfilter-devel, netfilter, lvs-devel, Eric Dumazet,
	Julian Anastasov, Hans Schillstrom

On 15.03.2011 06:27, Simon Horman wrote:
> Hi Patrick,
> 
> please consider pulling
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/lvs-test-2.6.git for-patrick
> to get the changes listed below.

Pulled, thanks Simon.

> This replaces the pull requests that I sent yesterday, sorry for messing
> that up.
> 
> Also, sorry for letting the number of patches grow so much, Julian and I
> were working on patches that conflicted with each other. But regardless, I
> should have done something about getting a request to you earlier.

No problem, the individual patches are quite small after all.

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [GIT PULL nf-next-2.6] IPVS
@ 2011-04-05  3:22 Simon Horman
  2011-04-05 10:18 ` Patrick McHardy
  0 siblings, 1 reply; 17+ messages in thread
From: Simon Horman @ 2011-04-05  3:22 UTC (permalink / raw)
  To: lvs-devel, netdev, netfilter-devel, netfilter
  Cc: Wensong Zhang, Julian Anastasov, Patrick McHardy

Hi Patrick,

please consider pulling
git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs-next-2.6.git master
to get the following minor change from myself. This pull request is
based on nf-next-2.6.

Simon Horman (1):
      IPVS: combine consecutive #ifdef CONFIG_PROC_FS blocks

 net/netfilter/ipvs/ip_vs_ctl.c |    3 ---
 1 files changed, 0 insertions(+), 3 deletions(-)


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [GIT PULL nf-next-2.6] IPVS
  2011-04-05  3:22 Simon Horman
@ 2011-04-05 10:18 ` Patrick McHardy
  0 siblings, 0 replies; 17+ messages in thread
From: Patrick McHardy @ 2011-04-05 10:18 UTC (permalink / raw)
  To: Simon Horman
  Cc: lvs-devel, netdev, netfilter-devel, netfilter, Wensong Zhang,
	Julian Anastasov

On 05.04.2011 05:22, Simon Horman wrote:
> Hi Patrick,
> 
> please consider pulling
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs-next-2.6.git master
> to get the following minor change from myself. This pull request is
> based on nf-next-2.6.
> 
> Simon Horman (1):
>       IPVS: combine consecutive #ifdef CONFIG_PROC_FS blocks
> 

Pulled, thanks Simon.

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2011-04-05 10:18 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-16  6:04 [GIT PULL nf-next-2.6] IPVS Simon Horman
2011-02-16  6:04 ` [PATCH 1/3] ipvs: fix timer in get_curr_sync_buff Simon Horman
2011-02-16  6:04 ` [PATCH 2/3] ipvs: remove extra lookups for ICMP packets Simon Horman
2011-02-16  6:04 ` [PATCH 3/3] ipvs: make "no destination available" message more informative Simon Horman
2011-02-16 13:19 ` [GIT PULL nf-next-2.6] IPVS Patrick McHardy
  -- strict thread matches above, loose matches on Subject: below --
2011-04-05  3:22 Simon Horman
2011-04-05 10:18 ` Patrick McHardy
2011-03-15  5:27 Simon Horman
2011-03-15 12:16 ` Patrick McHardy
2011-03-14  9:06 Simon Horman
2011-03-13 22:44 Simon Horman
2011-03-14 18:17 ` Patrick McHardy
2011-03-14 23:13   ` Simon Horman
2011-02-25  2:43 Simon Horman
2011-02-27 15:25 ` Patrick McHardy
2011-02-07  9:19 Simon Horman
2011-02-09  7:06 ` Patrick McHardy

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).