* [GIT PULL net] IPVS
@ 2012-04-27 0:53 Simon Horman
2012-04-27 0:53 ` [PATCH 1/5] ipvs: add check in ftp for initialized core Simon Horman
` (5 more replies)
0 siblings, 6 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-27 0:53 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
Hi Pablo,
please consider the following 5 changes for 3.4, they are all bug fixes.
I would also like these changes considered for stable.
The following changes since commit 8f9b9a2fad47af27e14b037395e03cd8278d96d7:
ipvs: fix crash in ip_vs_control_net_cleanup on unload (2012-04-25 11:16:30 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs.git master
for you to fetch changes up to 1c3dc0f92d127d3fdefa84c7ef629b070bf8d32c:
ipvs: kernel oops - do_ip_vs_get_ctl (2012-04-26 18:04:31 +0900)
----------------------------------------------------------------
Hans Schillstrom (3):
ipvs: null check of net->ipvs in lblc(r) shedulers
ipvs: take care of return value from protocol init_netns
ipvs: kernel oops - do_ip_vs_get_ctl
Julian Anastasov (2):
ipvs: add check in ftp for initialized core
ipvs: reset ipvs pointer in netns
include/net/ip_vs.h | 4 ++-
net/netfilter/ipvs/ip_vs_core.c | 11 +++++++
net/netfilter/ipvs/ip_vs_ctl.c | 52 +++++++++++++++++++--------------
net/netfilter/ipvs/ip_vs_ftp.c | 2 ++
net/netfilter/ipvs/ip_vs_lblc.c | 3 ++
net/netfilter/ipvs/ip_vs_lblcr.c | 3 ++
net/netfilter/ipvs/ip_vs_proto.c | 11 +++++--
net/netfilter/ipvs/ip_vs_proto_sctp.c | 5 +++-
net/netfilter/ipvs/ip_vs_proto_tcp.c | 5 +++-
net/netfilter/ipvs/ip_vs_proto_udp.c | 5 +++-
10 files changed, 73 insertions(+), 28 deletions(-)
^ permalink raw reply [flat|nested] 16+ messages in thread
* [PATCH 1/5] ipvs: add check in ftp for initialized core
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
@ 2012-04-27 0:53 ` Simon Horman
2012-04-27 0:53 ` [PATCH 2/5] ipvs: reset ipvs pointer in netns Simon Horman
` (4 subsequent siblings)
5 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-27 0:53 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer,
Simon Horman
From: Julian Anastasov <ja@ssi.bg>
Avoid crash when registering ip_vs_ftp after
the IPVS core initialization for netns fails. Do this by
checking for present core (net->ipvs).
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
net/netfilter/ipvs/ip_vs_ftp.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/net/netfilter/ipvs/ip_vs_ftp.c b/net/netfilter/ipvs/ip_vs_ftp.c
index 538d74e..e39f693 100644
--- a/net/netfilter/ipvs/ip_vs_ftp.c
+++ b/net/netfilter/ipvs/ip_vs_ftp.c
@@ -439,6 +439,8 @@ static int __net_init __ip_vs_ftp_init(struct net *net)
struct ip_vs_app *app;
struct netns_ipvs *ipvs = net_ipvs(net);
+ if (!ipvs)
+ return -ENOENT;
app = kmemdup(&ip_vs_ftp, sizeof(struct ip_vs_app), GFP_KERNEL);
if (!app)
return -ENOMEM;
--
1.7.9.5
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 2/5] ipvs: reset ipvs pointer in netns
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
2012-04-27 0:53 ` [PATCH 1/5] ipvs: add check in ftp for initialized core Simon Horman
@ 2012-04-27 0:53 ` Simon Horman
2012-04-27 0:53 ` [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers Simon Horman
` (3 subsequent siblings)
5 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-27 0:53 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer,
Simon Horman
From: Julian Anastasov <ja@ssi.bg>
Make sure net->ipvs is reset on netns cleanup or failed
initialization. It is needed for IPVS applications to know that
IPVS core is not loaded in netns.
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
net/netfilter/ipvs/ip_vs_core.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
index 2555816..260b9ef 100644
--- a/net/netfilter/ipvs/ip_vs_core.c
+++ b/net/netfilter/ipvs/ip_vs_core.c
@@ -1924,6 +1924,7 @@ protocol_fail:
control_fail:
ip_vs_estimator_net_cleanup(net);
estimator_fail:
+ net->ipvs = NULL;
return -ENOMEM;
}
@@ -1936,6 +1937,7 @@ static void __net_exit __ip_vs_cleanup(struct net *net)
ip_vs_control_net_cleanup(net);
ip_vs_estimator_net_cleanup(net);
IP_VS_DBG(2, "ipvs netns %d released\n", net_ipvs(net)->gen);
+ net->ipvs = NULL;
}
static void __net_exit __ip_vs_dev_cleanup(struct net *net)
--
1.7.9.5
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
2012-04-27 0:53 ` [PATCH 1/5] ipvs: add check in ftp for initialized core Simon Horman
2012-04-27 0:53 ` [PATCH 2/5] ipvs: reset ipvs pointer in netns Simon Horman
@ 2012-04-27 0:53 ` Simon Horman
2012-04-29 23:43 ` Pablo Neira Ayuso
2012-04-27 0:53 ` [PATCH 4/5] ipvs: take care of return value from protocol init_netns Simon Horman
` (2 subsequent siblings)
5 siblings, 1 reply; 16+ messages in thread
From: Simon Horman @ 2012-04-27 0:53 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer,
Simon Horman
From: Hans Schillstrom <hans.schillstrom@ericsson.com>
Avoid crash when registering shedulers after
the IPVS core initialization for netns fails. Do this by
checking for present core (net->ipvs).
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
net/netfilter/ipvs/ip_vs_lblc.c | 3 +++
net/netfilter/ipvs/ip_vs_lblcr.c | 3 +++
2 files changed, 6 insertions(+)
diff --git a/net/netfilter/ipvs/ip_vs_lblc.c b/net/netfilter/ipvs/ip_vs_lblc.c
index 0f16283..caa4370 100644
--- a/net/netfilter/ipvs/ip_vs_lblc.c
+++ b/net/netfilter/ipvs/ip_vs_lblc.c
@@ -551,6 +551,9 @@ static int __net_init __ip_vs_lblc_init(struct net *net)
{
struct netns_ipvs *ipvs = net_ipvs(net);
+ if (!ipvs)
+ return -ENOENT;
+
if (!net_eq(net, &init_net)) {
ipvs->lblc_ctl_table = kmemdup(vs_vars_table,
sizeof(vs_vars_table),
diff --git a/net/netfilter/ipvs/ip_vs_lblcr.c b/net/netfilter/ipvs/ip_vs_lblcr.c
index eec797f..548bf37 100644
--- a/net/netfilter/ipvs/ip_vs_lblcr.c
+++ b/net/netfilter/ipvs/ip_vs_lblcr.c
@@ -745,6 +745,9 @@ static int __net_init __ip_vs_lblcr_init(struct net *net)
{
struct netns_ipvs *ipvs = net_ipvs(net);
+ if (!ipvs)
+ return -ENOENT;
+
if (!net_eq(net, &init_net)) {
ipvs->lblcr_ctl_table = kmemdup(vs_vars_table,
sizeof(vs_vars_table),
--
1.7.9.5
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 4/5] ipvs: take care of return value from protocol init_netns
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
` (2 preceding siblings ...)
2012-04-27 0:53 ` [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers Simon Horman
@ 2012-04-27 0:53 ` Simon Horman
2012-04-27 0:53 ` [PATCH 5/5] ipvs: kernel oops - do_ip_vs_get_ctl Simon Horman
2012-04-30 9:27 ` [GIT PULL net] IPVS Pablo Neira Ayuso
5 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-27 0:53 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer,
Simon Horman
From: Hans Schillstrom <hans.schillstrom@ericsson.com>
ip_vs_create_timeout_table() can return NULL
All functions protocol init_netns is affected of this patch.
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
include/net/ip_vs.h | 2 +-
net/netfilter/ipvs/ip_vs_proto.c | 11 +++++++++--
net/netfilter/ipvs/ip_vs_proto_sctp.c | 5 ++++-
net/netfilter/ipvs/ip_vs_proto_tcp.c | 5 ++++-
net/netfilter/ipvs/ip_vs_proto_udp.c | 5 ++++-
5 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h
index 2bdee51..6d90dda 100644
--- a/include/net/ip_vs.h
+++ b/include/net/ip_vs.h
@@ -393,7 +393,7 @@ struct ip_vs_protocol {
void (*exit)(struct ip_vs_protocol *pp);
- void (*init_netns)(struct net *net, struct ip_vs_proto_data *pd);
+ int (*init_netns)(struct net *net, struct ip_vs_proto_data *pd);
void (*exit_netns)(struct net *net, struct ip_vs_proto_data *pd);
diff --git a/net/netfilter/ipvs/ip_vs_proto.c b/net/netfilter/ipvs/ip_vs_proto.c
index a62360e..ed835e6 100644
--- a/net/netfilter/ipvs/ip_vs_proto.c
+++ b/net/netfilter/ipvs/ip_vs_proto.c
@@ -78,8 +78,15 @@ register_ip_vs_proto_netns(struct net *net, struct ip_vs_protocol *pp)
ipvs->proto_data_table[hash] = pd;
atomic_set(&pd->appcnt, 0); /* Init app counter */
- if (pp->init_netns != NULL)
- pp->init_netns(net, pd);
+ if (pp->init_netns != NULL) {
+ int ret = pp->init_netns(net, pd);
+ if (ret) {
+ /* unlink an free proto data */
+ ipvs->proto_data_table[hash] = pd->next;
+ kfree(pd);
+ return ret;
+ }
+ }
return 0;
}
diff --git a/net/netfilter/ipvs/ip_vs_proto_sctp.c b/net/netfilter/ipvs/ip_vs_proto_sctp.c
index 1fbf7a2..9f3fb75 100644
--- a/net/netfilter/ipvs/ip_vs_proto_sctp.c
+++ b/net/netfilter/ipvs/ip_vs_proto_sctp.c
@@ -1090,7 +1090,7 @@ out:
* timeouts is netns related now.
* ---------------------------------------------
*/
-static void __ip_vs_sctp_init(struct net *net, struct ip_vs_proto_data *pd)
+static int __ip_vs_sctp_init(struct net *net, struct ip_vs_proto_data *pd)
{
struct netns_ipvs *ipvs = net_ipvs(net);
@@ -1098,6 +1098,9 @@ static void __ip_vs_sctp_init(struct net *net, struct ip_vs_proto_data *pd)
spin_lock_init(&ipvs->sctp_app_lock);
pd->timeout_table = ip_vs_create_timeout_table((int *)sctp_timeouts,
sizeof(sctp_timeouts));
+ if (!pd->timeout_table)
+ return -ENOMEM;
+ return 0;
}
static void __ip_vs_sctp_exit(struct net *net, struct ip_vs_proto_data *pd)
diff --git a/net/netfilter/ipvs/ip_vs_proto_tcp.c b/net/netfilter/ipvs/ip_vs_proto_tcp.c
index ef8641f..cd609cc 100644
--- a/net/netfilter/ipvs/ip_vs_proto_tcp.c
+++ b/net/netfilter/ipvs/ip_vs_proto_tcp.c
@@ -677,7 +677,7 @@ void ip_vs_tcp_conn_listen(struct net *net, struct ip_vs_conn *cp)
* timeouts is netns related now.
* ---------------------------------------------
*/
-static void __ip_vs_tcp_init(struct net *net, struct ip_vs_proto_data *pd)
+static int __ip_vs_tcp_init(struct net *net, struct ip_vs_proto_data *pd)
{
struct netns_ipvs *ipvs = net_ipvs(net);
@@ -685,7 +685,10 @@ static void __ip_vs_tcp_init(struct net *net, struct ip_vs_proto_data *pd)
spin_lock_init(&ipvs->tcp_app_lock);
pd->timeout_table = ip_vs_create_timeout_table((int *)tcp_timeouts,
sizeof(tcp_timeouts));
+ if (!pd->timeout_table)
+ return -ENOMEM;
pd->tcp_state_table = tcp_states;
+ return 0;
}
static void __ip_vs_tcp_exit(struct net *net, struct ip_vs_proto_data *pd)
diff --git a/net/netfilter/ipvs/ip_vs_proto_udp.c b/net/netfilter/ipvs/ip_vs_proto_udp.c
index f4b7262..2fedb2d 100644
--- a/net/netfilter/ipvs/ip_vs_proto_udp.c
+++ b/net/netfilter/ipvs/ip_vs_proto_udp.c
@@ -467,7 +467,7 @@ udp_state_transition(struct ip_vs_conn *cp, int direction,
cp->timeout = pd->timeout_table[IP_VS_UDP_S_NORMAL];
}
-static void __udp_init(struct net *net, struct ip_vs_proto_data *pd)
+static int __udp_init(struct net *net, struct ip_vs_proto_data *pd)
{
struct netns_ipvs *ipvs = net_ipvs(net);
@@ -475,6 +475,9 @@ static void __udp_init(struct net *net, struct ip_vs_proto_data *pd)
spin_lock_init(&ipvs->udp_app_lock);
pd->timeout_table = ip_vs_create_timeout_table((int *)udp_timeouts,
sizeof(udp_timeouts));
+ if (!pd->timeout_table)
+ return -ENOMEM;
+ return 0;
}
static void __udp_exit(struct net *net, struct ip_vs_proto_data *pd)
--
1.7.9.5
^ permalink raw reply related [flat|nested] 16+ messages in thread
* [PATCH 5/5] ipvs: kernel oops - do_ip_vs_get_ctl
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
` (3 preceding siblings ...)
2012-04-27 0:53 ` [PATCH 4/5] ipvs: take care of return value from protocol init_netns Simon Horman
@ 2012-04-27 0:53 ` Simon Horman
2012-04-30 9:27 ` [GIT PULL net] IPVS Pablo Neira Ayuso
5 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-27 0:53 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer,
Simon Horman
From: Hans Schillstrom <hans.schillstrom@ericsson.com>
Change order of init so netns init is ready
when register ioctl and netlink.
Ver2
Whitespace fixes and __init added.
Reported-by: "Ryan O'Hara" <rohara@redhat.com>
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
---
include/net/ip_vs.h | 2 ++
net/netfilter/ipvs/ip_vs_core.c | 9 +++++++
net/netfilter/ipvs/ip_vs_ctl.c | 52 ++++++++++++++++++++++-----------------
3 files changed, 41 insertions(+), 22 deletions(-)
diff --git a/include/net/ip_vs.h b/include/net/ip_vs.h
index 6d90dda..72522f0 100644
--- a/include/net/ip_vs.h
+++ b/include/net/ip_vs.h
@@ -1203,6 +1203,8 @@ ip_vs_lookup_real_service(struct net *net, int af, __u16 protocol,
extern int ip_vs_use_count_inc(void);
extern void ip_vs_use_count_dec(void);
+extern int ip_vs_register_nl_ioctl(void);
+extern void ip_vs_unregister_nl_ioctl(void);
extern int ip_vs_control_init(void);
extern void ip_vs_control_cleanup(void);
extern struct ip_vs_dest *
diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
index 260b9ef..00bdb1d 100644
--- a/net/netfilter/ipvs/ip_vs_core.c
+++ b/net/netfilter/ipvs/ip_vs_core.c
@@ -1995,10 +1995,18 @@ static int __init ip_vs_init(void)
goto cleanup_dev;
}
+ ret = ip_vs_register_nl_ioctl();
+ if (ret < 0) {
+ pr_err("can't register netlink/ioctl.\n");
+ goto cleanup_hooks;
+ }
+
pr_info("ipvs loaded.\n");
return ret;
+cleanup_hooks:
+ nf_unregister_hooks(ip_vs_ops, ARRAY_SIZE(ip_vs_ops));
cleanup_dev:
unregister_pernet_device(&ipvs_core_dev_ops);
cleanup_sub:
@@ -2014,6 +2022,7 @@ exit:
static void __exit ip_vs_cleanup(void)
{
+ ip_vs_unregister_nl_ioctl();
nf_unregister_hooks(ip_vs_ops, ARRAY_SIZE(ip_vs_ops));
unregister_pernet_device(&ipvs_core_dev_ops);
unregister_pernet_subsys(&ipvs_core_ops); /* free ip_vs struct */
diff --git a/net/netfilter/ipvs/ip_vs_ctl.c b/net/netfilter/ipvs/ip_vs_ctl.c
index 376d2b1..f558998 100644
--- a/net/netfilter/ipvs/ip_vs_ctl.c
+++ b/net/netfilter/ipvs/ip_vs_ctl.c
@@ -3750,21 +3750,10 @@ void __net_exit ip_vs_control_net_cleanup(struct net *net)
free_percpu(ipvs->tot_stats.cpustats);
}
-int __init ip_vs_control_init(void)
+int __init ip_vs_register_nl_ioctl(void)
{
- int idx;
int ret;
- EnterFunction(2);
-
- /* Initialize svc_table, ip_vs_svc_fwm_table, rs_table */
- for(idx = 0; idx < IP_VS_SVC_TAB_SIZE; idx++) {
- INIT_LIST_HEAD(&ip_vs_svc_table[idx]);
- INIT_LIST_HEAD(&ip_vs_svc_fwm_table[idx]);
- }
-
- smp_wmb(); /* Do we really need it now ? */
-
ret = nf_register_sockopt(&ip_vs_sockopts);
if (ret) {
pr_err("cannot register sockopt.\n");
@@ -3776,28 +3765,47 @@ int __init ip_vs_control_init(void)
pr_err("cannot register Generic Netlink interface.\n");
goto err_genl;
}
-
- ret = register_netdevice_notifier(&ip_vs_dst_notifier);
- if (ret < 0)
- goto err_notf;
-
- LeaveFunction(2);
return 0;
-err_notf:
- ip_vs_genl_unregister();
err_genl:
nf_unregister_sockopt(&ip_vs_sockopts);
err_sock:
return ret;
}
+void ip_vs_unregister_nl_ioctl(void)
+{
+ ip_vs_genl_unregister();
+ nf_unregister_sockopt(&ip_vs_sockopts);
+}
+
+int __init ip_vs_control_init(void)
+{
+ int idx;
+ int ret;
+
+ EnterFunction(2);
+
+ /* Initialize svc_table, ip_vs_svc_fwm_table, rs_table */
+ for (idx = 0; idx < IP_VS_SVC_TAB_SIZE; idx++) {
+ INIT_LIST_HEAD(&ip_vs_svc_table[idx]);
+ INIT_LIST_HEAD(&ip_vs_svc_fwm_table[idx]);
+ }
+
+ smp_wmb(); /* Do we really need it now ? */
+
+ ret = register_netdevice_notifier(&ip_vs_dst_notifier);
+ if (ret < 0)
+ return ret;
+
+ LeaveFunction(2);
+ return 0;
+}
+
void ip_vs_control_cleanup(void)
{
EnterFunction(2);
unregister_netdevice_notifier(&ip_vs_dst_notifier);
- ip_vs_genl_unregister();
- nf_unregister_sockopt(&ip_vs_sockopts);
LeaveFunction(2);
}
--
1.7.9.5
^ permalink raw reply related [flat|nested] 16+ messages in thread
* Re: [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers
2012-04-27 0:53 ` [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers Simon Horman
@ 2012-04-29 23:43 ` Pablo Neira Ayuso
2012-04-30 6:35 ` Simon Horman
0 siblings, 1 reply; 16+ messages in thread
From: Pablo Neira Ayuso @ 2012-04-29 23:43 UTC (permalink / raw)
To: Simon Horman
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
On Fri, Apr 27, 2012 at 09:53:57AM +0900, Simon Horman wrote:
> From: Hans Schillstrom <hans.schillstrom@ericsson.com>
>
> Avoid crash when registering shedulers after
> the IPVS core initialization for netns fails. Do this by
> checking for present core (net->ipvs).
>
> Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Julian Anastasov <ja@ssi.bg>
This incomplete tag has slipped through, right?
Looking at the archive, I don't see any comment from Julian on this,
so I'll just remove it from the patch description.
I'll fix this minor nitppick myself. No need to resend. But you'll
have to rebase your tree, sorry.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers
2012-04-29 23:43 ` Pablo Neira Ayuso
@ 2012-04-30 6:35 ` Simon Horman
0 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-30 6:35 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
On Mon, Apr 30, 2012 at 01:43:01AM +0200, Pablo Neira Ayuso wrote:
> On Fri, Apr 27, 2012 at 09:53:57AM +0900, Simon Horman wrote:
> > From: Hans Schillstrom <hans.schillstrom@ericsson.com>
> >
> > Avoid crash when registering shedulers after
> > the IPVS core initialization for netns fails. Do this by
> > checking for present core (net->ipvs).
> >
> > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Julian Anastasov <ja@ssi.bg>
>
> This incomplete tag has slipped through, right?
>
> Looking at the archive, I don't see any comment from Julian on this,
> so I'll just remove it from the patch description.
>
> I'll fix this minor nitppick myself. No need to resend. But you'll
> have to rebase your tree, sorry.
Sorry about that, I thought I had weeded out that problem.
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [GIT PULL net] IPVS
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
` (4 preceding siblings ...)
2012-04-27 0:53 ` [PATCH 5/5] ipvs: kernel oops - do_ip_vs_get_ctl Simon Horman
@ 2012-04-30 9:27 ` Pablo Neira Ayuso
2012-07-10 9:20 ` Simon Horman
5 siblings, 1 reply; 16+ messages in thread
From: Pablo Neira Ayuso @ 2012-04-30 9:27 UTC (permalink / raw)
To: Simon Horman
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
On Fri, Apr 27, 2012 at 09:53:54AM +0900, Simon Horman wrote:
> Hi Pablo,
>
> please consider the following 5 changes for 3.4, they are all bug fixes.
> I would also like these changes considered for stable.
Please, ping me again once these have hit Linus tree to ask for
-stable submission.
> The following changes since commit 8f9b9a2fad47af27e14b037395e03cd8278d96d7:
>
> ipvs: fix crash in ip_vs_control_net_cleanup on unload (2012-04-25 11:16:30 +0200)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs.git master
>
> for you to fetch changes up to 1c3dc0f92d127d3fdefa84c7ef629b070bf8d32c:
>
> ipvs: kernel oops - do_ip_vs_get_ctl (2012-04-26 18:04:31 +0900)
Pulled and pushed out, thanks Simon et al!
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [GIT PULL net] IPVS
2012-04-30 9:27 ` [GIT PULL net] IPVS Pablo Neira Ayuso
@ 2012-07-10 9:20 ` Simon Horman
2012-07-10 13:05 ` Pablo Neira Ayuso
0 siblings, 1 reply; 16+ messages in thread
From: Simon Horman @ 2012-07-10 9:20 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
On Mon, Apr 30, 2012 at 11:27:22AM +0200, Pablo Neira Ayuso wrote:
> On Fri, Apr 27, 2012 at 09:53:54AM +0900, Simon Horman wrote:
> > Hi Pablo,
> >
> > please consider the following 5 changes for 3.4, they are all bug fixes.
> > I would also like these changes considered for stable.
>
> Please, ping me again once these have hit Linus tree to ask for
> -stable submission.
Sorry for letting this slip through the cracks.
Please consider the following commits which are in Linus's tree for stable.
Or I can submit them directly if that is easier.
There are 7 patches listed below. The first 5 were the patches in this
pull request. The last two were patches in a git pull request
a few days earlier.
commit 8537de8a7ab6681cc72fb0411ab1ba7fdba62dd0
Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
Date: Thu Apr 26 07:47:44 2012 +0200
ipvs: kernel oops - do_ip_vs_get_ctl
Change order of init so netns init is ready
when register ioctl and netlink.
Ver2
Whitespace fixes and __init added.
Reported-by: "Ryan O'Hara" <rohara@redhat.com>
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
commit 582b8e3eadaec77788c1aa188081a8d5059c42a6
Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
Date: Thu Apr 26 09:45:35 2012 +0200
ipvs: take care of return value from protocol init_netns
ip_vs_create_timeout_table() can return NULL
All functions protocol init_netns is affected of this patch.
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
commit 4b984cd50bc1b6d492175cd77bfabb78e76ffa67
Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
Date: Thu Apr 26 09:45:34 2012 +0200
ipvs: null check of net->ipvs in lblc(r) shedulers
Avoid crash when registering shedulers after
the IPVS core initialization for netns fails. Do this by
checking for present core (net->ipvs).
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
commit 39f618b4fd95ae243d940ec64c961009c74e3333
Author: Julian Anastasov <ja@ssi.bg>
Date: Wed Apr 25 00:29:58 2012 +0300
ipvs: reset ipvs pointer in netns
Make sure net->ipvs is reset on netns cleanup or failed
initialization. It is needed for IPVS applications to know that
IPVS core is not loaded in netns.
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
commit 8d08d71ce59438a6ef06be5db07966e0c144b74e
Author: Julian Anastasov <ja@ssi.bg>
Date: Wed Apr 25 00:29:59 2012 +0300
ipvs: add check in ftp for initialized core
Avoid crash when registering ip_vs_ftp after
the IPVS core initialization for netns fails. Do this by
checking for present core (net->ipvs).
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
commit 8f9b9a2fad47af27e14b037395e03cd8278d96d7
Author: Julian Anastasov <ja@ssi.bg>
Date: Fri Apr 13 18:08:43 2012 +0300
ipvs: fix crash in ip_vs_control_net_cleanup on unload
commit 14e405461e664b777e2a5636e10b2ebf36a686ec (2.6.39)
("Add __ip_vs_control_{init,cleanup}_sysctl()")
introduced regression due to wrong __net_init for
__ip_vs_control_cleanup_sysctl. This leads to crash when
the ip_vs module is unloaded.
Fix it by changing __net_init to __net_exit for
the function that is already renamed to ip_vs_control_net_cleanup_sysctl.
Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Hans Schillstrom <hans@schillstrom.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
commit 7118c07a844d367560ee91adb2071bde2fabcdbf
Author: Sasha Levin <levinsasha928@gmail.com>
Date: Sat Apr 14 12:37:46 2012 -0400
ipvs: Verify that IP_VS protocol has been registered
The registration of a protocol might fail, there were no checks
and all registrations were assumed to be correct. This lead to
NULL ptr dereferences when apps tried registering.
For example:
[ 1293.226051] BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
[ 1293.227038] IP: [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
[ 1293.227038] PGD 391de067 PUD 6c20b067 PMD 0
[ 1293.227038] Oops: 0000 [#1] PREEMPT SMP
[ 1293.227038] CPU 1
[ 1293.227038] Pid: 19609, comm: trinity Tainted: G W 3.4.0-rc1-next-20120405-sasha-dirty #57
[ 1293.227038] RIP: 0010:[<ffffffff822aacb0>] [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
[ 1293.227038] RSP: 0018:ffff880038c1dd18 EFLAGS: 00010286
[ 1293.227038] RAX: ffffffffffffffc0 RBX: 0000000000001500 RCX: 0000000000010000
[ 1293.227038] RDX: 0000000000000000 RSI: ffff88003a2d5888 RDI: 0000000000000282
[ 1293.227038] RBP: ffff880038c1dd48 R08: 0000000000000000 R09: 0000000000000000
[ 1293.227038] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88003a2d5668
[ 1293.227038] R13: ffff88003a2d5988 R14: ffff8800696a8ff8 R15: 0000000000000000
[ 1293.227038] FS: 00007f01930d9700(0000) GS:ffff88007ce00000(0000) knlGS:0000000000000000
[ 1293.227038] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
[ 1293.227038] CR2: 0000000000000018 CR3: 0000000065dfc000 CR4: 00000000000406e0
[ 1293.227038] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 1293.227038] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
[ 1293.227038] Process trinity (pid: 19609, threadinfo ffff880038c1c000, task ffff88002dc73000)
[ 1293.227038] Stack:
[ 1293.227038] ffff880038c1dd48 00000000fffffff4 ffff8800696aada0 ffff8800694f5580
[ 1293.227038] ffffffff8369f1e0 0000000000001500 ffff880038c1dd98 ffffffff822a716b
[ 1293.227038] 0000000000000000 ffff8800696a8ff8 0000000000000015 ffff8800694f5580
[ 1293.227038] Call Trace:
[ 1293.227038] [<ffffffff822a716b>] ip_vs_app_inc_new+0xdb/0x180
[ 1293.227038] [<ffffffff822a7258>] register_ip_vs_app_inc+0x48/0x70
[ 1293.227038] [<ffffffff822b2fea>] __ip_vs_ftp_init+0xba/0x140
[ 1293.227038] [<ffffffff821c9060>] ops_init+0x80/0x90
[ 1293.227038] [<ffffffff821c90cb>] setup_net+0x5b/0xe0
[ 1293.227038] [<ffffffff821c9416>] copy_net_ns+0x76/0x100
[ 1293.227038] [<ffffffff810dc92b>] create_new_namespaces+0xfb/0x190
[ 1293.227038] [<ffffffff810dca21>] unshare_nsproxy_namespaces+0x61/0x80
[ 1293.227038] [<ffffffff810afd1f>] sys_unshare+0xff/0x290
[ 1293.227038] [<ffffffff8187622e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
[ 1293.227038] [<ffffffff82665539>] system_call_fastpath+0x16/0x1b
[ 1293.227038] Code: 89 c7 e8 34 91 3b 00 89 de 66 c1 ee 04 31 de 83 e6 0f 48 83 c6 22 48 c1 e6 04 4a 8b 14 26 49 8d 34 34 48 8d 42 c0 48 39 d6 74 13 <66> 39 58 58 74 22 48 8b 48 40 48 8d 41 c0 48 39 ce 75 ed 49 8d
[ 1293.227038] RIP [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
[ 1293.227038] RSP <ffff880038c1dd18>
[ 1293.227038] CR2: 0000000000000018
[ 1293.379284] ---[ end trace 364ab40c7011a009 ]---
[ 1293.381182] Kernel panic - not syncing: Fatal exception in interrupt
Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [GIT PULL net] IPVS
2012-07-10 9:20 ` Simon Horman
@ 2012-07-10 13:05 ` Pablo Neira Ayuso
2012-07-17 10:15 ` Pablo Neira Ayuso
0 siblings, 1 reply; 16+ messages in thread
From: Pablo Neira Ayuso @ 2012-07-10 13:05 UTC (permalink / raw)
To: Simon Horman
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
Hi Simon,
On Tue, Jul 10, 2012 at 06:20:03PM +0900, Simon Horman wrote:
> On Mon, Apr 30, 2012 at 11:27:22AM +0200, Pablo Neira Ayuso wrote:
> > On Fri, Apr 27, 2012 at 09:53:54AM +0900, Simon Horman wrote:
> > > Hi Pablo,
> > >
> > > please consider the following 5 changes for 3.4, they are all bug fixes.
> > > I would also like these changes considered for stable.
> >
> > Please, ping me again once these have hit Linus tree to ask for
> > -stable submission.
>
> Sorry for letting this slip through the cracks.
>
> Please consider the following commits which are in Linus's tree for stable.
> Or I can submit them directly if that is easier.
>
> There are 7 patches listed below. The first 5 were the patches in this
> pull request. The last two were patches in a git pull request
> a few days earlier.
That's fine, I can make it, but you have to include what stable
releases this will be applied, eg. patch 1 to releases 3.4 and 3.2.
I think -stable maintainers will ask for that.
> commit 8537de8a7ab6681cc72fb0411ab1ba7fdba62dd0
> Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Date: Thu Apr 26 07:47:44 2012 +0200
>
> ipvs: kernel oops - do_ip_vs_get_ctl
>
> Change order of init so netns init is ready
> when register ioctl and netlink.
>
> Ver2
> Whitespace fixes and __init added.
>
> Reported-by: "Ryan O'Hara" <rohara@redhat.com>
> Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Acked-by: Julian Anastasov <ja@ssi.bg>
> Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
> Signed-off-by: Simon Horman <horms@verge.net.au>
>
> commit 582b8e3eadaec77788c1aa188081a8d5059c42a6
> Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Date: Thu Apr 26 09:45:35 2012 +0200
>
> ipvs: take care of return value from protocol init_netns
>
> ip_vs_create_timeout_table() can return NULL
> All functions protocol init_netns is affected of this patch.
>
> Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Acked-by: Julian Anastasov <ja@ssi.bg>
> Signed-off-by: Simon Horman <horms@verge.net.au>
>
> commit 4b984cd50bc1b6d492175cd77bfabb78e76ffa67
> Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Date: Thu Apr 26 09:45:34 2012 +0200
>
> ipvs: null check of net->ipvs in lblc(r) shedulers
>
> Avoid crash when registering shedulers after
> the IPVS core initialization for netns fails. Do this by
> checking for present core (net->ipvs).
>
> Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Acked-by: Julian Anastasov <ja@ssi.bg>
> Signed-off-by: Simon Horman <horms@verge.net.au>
>
> commit 39f618b4fd95ae243d940ec64c961009c74e3333
> Author: Julian Anastasov <ja@ssi.bg>
> Date: Wed Apr 25 00:29:58 2012 +0300
>
> ipvs: reset ipvs pointer in netns
>
> Make sure net->ipvs is reset on netns cleanup or failed
> initialization. It is needed for IPVS applications to know that
> IPVS core is not loaded in netns.
>
> Signed-off-by: Julian Anastasov <ja@ssi.bg>
> Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Signed-off-by: Simon Horman <horms@verge.net.au>
>
> commit 8d08d71ce59438a6ef06be5db07966e0c144b74e
> Author: Julian Anastasov <ja@ssi.bg>
> Date: Wed Apr 25 00:29:59 2012 +0300
>
> ipvs: add check in ftp for initialized core
>
> Avoid crash when registering ip_vs_ftp after
> the IPVS core initialization for netns fails. Do this by
> checking for present core (net->ipvs).
>
> Signed-off-by: Julian Anastasov <ja@ssi.bg>
> Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> Signed-off-by: Simon Horman <horms@verge.net.au>
>
> commit 8f9b9a2fad47af27e14b037395e03cd8278d96d7
> Author: Julian Anastasov <ja@ssi.bg>
> Date: Fri Apr 13 18:08:43 2012 +0300
>
> ipvs: fix crash in ip_vs_control_net_cleanup on unload
>
> commit 14e405461e664b777e2a5636e10b2ebf36a686ec (2.6.39)
> ("Add __ip_vs_control_{init,cleanup}_sysctl()")
> introduced regression due to wrong __net_init for
> __ip_vs_control_cleanup_sysctl. This leads to crash when
> the ip_vs module is unloaded.
>
> Fix it by changing __net_init to __net_exit for
> the function that is already renamed to ip_vs_control_net_cleanup_sysctl.
>
> Signed-off-by: Julian Anastasov <ja@ssi.bg>
> Signed-off-by: Hans Schillstrom <hans@schillstrom.com>
> Signed-off-by: Simon Horman <horms@verge.net.au>
> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
>
> commit 7118c07a844d367560ee91adb2071bde2fabcdbf
> Author: Sasha Levin <levinsasha928@gmail.com>
> Date: Sat Apr 14 12:37:46 2012 -0400
>
> ipvs: Verify that IP_VS protocol has been registered
>
> The registration of a protocol might fail, there were no checks
> and all registrations were assumed to be correct. This lead to
> NULL ptr dereferences when apps tried registering.
>
> For example:
>
> [ 1293.226051] BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
> [ 1293.227038] IP: [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> [ 1293.227038] PGD 391de067 PUD 6c20b067 PMD 0
> [ 1293.227038] Oops: 0000 [#1] PREEMPT SMP
> [ 1293.227038] CPU 1
> [ 1293.227038] Pid: 19609, comm: trinity Tainted: G W 3.4.0-rc1-next-20120405-sasha-dirty #57
> [ 1293.227038] RIP: 0010:[<ffffffff822aacb0>] [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> [ 1293.227038] RSP: 0018:ffff880038c1dd18 EFLAGS: 00010286
> [ 1293.227038] RAX: ffffffffffffffc0 RBX: 0000000000001500 RCX: 0000000000010000
> [ 1293.227038] RDX: 0000000000000000 RSI: ffff88003a2d5888 RDI: 0000000000000282
> [ 1293.227038] RBP: ffff880038c1dd48 R08: 0000000000000000 R09: 0000000000000000
> [ 1293.227038] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88003a2d5668
> [ 1293.227038] R13: ffff88003a2d5988 R14: ffff8800696a8ff8 R15: 0000000000000000
> [ 1293.227038] FS: 00007f01930d9700(0000) GS:ffff88007ce00000(0000) knlGS:0000000000000000
> [ 1293.227038] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> [ 1293.227038] CR2: 0000000000000018 CR3: 0000000065dfc000 CR4: 00000000000406e0
> [ 1293.227038] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> [ 1293.227038] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> [ 1293.227038] Process trinity (pid: 19609, threadinfo ffff880038c1c000, task ffff88002dc73000)
> [ 1293.227038] Stack:
> [ 1293.227038] ffff880038c1dd48 00000000fffffff4 ffff8800696aada0 ffff8800694f5580
> [ 1293.227038] ffffffff8369f1e0 0000000000001500 ffff880038c1dd98 ffffffff822a716b
> [ 1293.227038] 0000000000000000 ffff8800696a8ff8 0000000000000015 ffff8800694f5580
> [ 1293.227038] Call Trace:
> [ 1293.227038] [<ffffffff822a716b>] ip_vs_app_inc_new+0xdb/0x180
> [ 1293.227038] [<ffffffff822a7258>] register_ip_vs_app_inc+0x48/0x70
> [ 1293.227038] [<ffffffff822b2fea>] __ip_vs_ftp_init+0xba/0x140
> [ 1293.227038] [<ffffffff821c9060>] ops_init+0x80/0x90
> [ 1293.227038] [<ffffffff821c90cb>] setup_net+0x5b/0xe0
> [ 1293.227038] [<ffffffff821c9416>] copy_net_ns+0x76/0x100
> [ 1293.227038] [<ffffffff810dc92b>] create_new_namespaces+0xfb/0x190
> [ 1293.227038] [<ffffffff810dca21>] unshare_nsproxy_namespaces+0x61/0x80
> [ 1293.227038] [<ffffffff810afd1f>] sys_unshare+0xff/0x290
> [ 1293.227038] [<ffffffff8187622e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
> [ 1293.227038] [<ffffffff82665539>] system_call_fastpath+0x16/0x1b
> [ 1293.227038] Code: 89 c7 e8 34 91 3b 00 89 de 66 c1 ee 04 31 de 83 e6 0f 48 83 c6 22 48 c1 e6 04 4a 8b 14 26 49 8d 34 34 48 8d 42 c0 48 39 d6 74 13 <66> 39 58 58 74 22 48 8b 48 40 48 8d 41 c0 48 39 ce 75 ed 49 8d
> [ 1293.227038] RIP [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> [ 1293.227038] RSP <ffff880038c1dd18>
> [ 1293.227038] CR2: 0000000000000018
> [ 1293.379284] ---[ end trace 364ab40c7011a009 ]---
> [ 1293.381182] Kernel panic - not syncing: Fatal exception in interrupt
>
> Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
> Acked-by: Julian Anastasov <ja@ssi.bg>
> Signed-off-by: Simon Horman <horms@verge.net.au>
> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [GIT PULL net] IPVS
2012-07-10 13:05 ` Pablo Neira Ayuso
@ 2012-07-17 10:15 ` Pablo Neira Ayuso
2012-07-18 0:01 ` Simon Horman
0 siblings, 1 reply; 16+ messages in thread
From: Pablo Neira Ayuso @ 2012-07-17 10:15 UTC (permalink / raw)
To: Simon Horman
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
On Tue, Jul 10, 2012 at 03:05:03PM +0200, Pablo Neira Ayuso wrote:
> Hi Simon,
>
> On Tue, Jul 10, 2012 at 06:20:03PM +0900, Simon Horman wrote:
> > On Mon, Apr 30, 2012 at 11:27:22AM +0200, Pablo Neira Ayuso wrote:
> > > On Fri, Apr 27, 2012 at 09:53:54AM +0900, Simon Horman wrote:
> > > > Hi Pablo,
> > > >
> > > > please consider the following 5 changes for 3.4, they are all bug fixes.
> > > > I would also like these changes considered for stable.
> > >
> > > Please, ping me again once these have hit Linus tree to ask for
> > > -stable submission.
> >
> > Sorry for letting this slip through the cracks.
> >
> > Please consider the following commits which are in Linus's tree for stable.
> > Or I can submit them directly if that is easier.
> >
> > There are 7 patches listed below. The first 5 were the patches in this
> > pull request. The last two were patches in a git pull request
> > a few days earlier.
>
> That's fine, I can make it, but you have to include what stable
> releases this will be applied, eg. patch 1 to releases 3.4 and 3.2.
>
> I think -stable maintainers will ask for that.
Ping?
> > commit 8537de8a7ab6681cc72fb0411ab1ba7fdba62dd0
> > Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Date: Thu Apr 26 07:47:44 2012 +0200
> >
> > ipvs: kernel oops - do_ip_vs_get_ctl
> >
> > Change order of init so netns init is ready
> > when register ioctl and netlink.
> >
> > Ver2
> > Whitespace fixes and __init added.
> >
> > Reported-by: "Ryan O'Hara" <rohara@redhat.com>
> > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Acked-by: Julian Anastasov <ja@ssi.bg>
> > Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> >
> > commit 582b8e3eadaec77788c1aa188081a8d5059c42a6
> > Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Date: Thu Apr 26 09:45:35 2012 +0200
> >
> > ipvs: take care of return value from protocol init_netns
> >
> > ip_vs_create_timeout_table() can return NULL
> > All functions protocol init_netns is affected of this patch.
> >
> > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Acked-by: Julian Anastasov <ja@ssi.bg>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> >
> > commit 4b984cd50bc1b6d492175cd77bfabb78e76ffa67
> > Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Date: Thu Apr 26 09:45:34 2012 +0200
> >
> > ipvs: null check of net->ipvs in lblc(r) shedulers
> >
> > Avoid crash when registering shedulers after
> > the IPVS core initialization for netns fails. Do this by
> > checking for present core (net->ipvs).
> >
> > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Acked-by: Julian Anastasov <ja@ssi.bg>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> >
> > commit 39f618b4fd95ae243d940ec64c961009c74e3333
> > Author: Julian Anastasov <ja@ssi.bg>
> > Date: Wed Apr 25 00:29:58 2012 +0300
> >
> > ipvs: reset ipvs pointer in netns
> >
> > Make sure net->ipvs is reset on netns cleanup or failed
> > initialization. It is needed for IPVS applications to know that
> > IPVS core is not loaded in netns.
> >
> > Signed-off-by: Julian Anastasov <ja@ssi.bg>
> > Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> >
> > commit 8d08d71ce59438a6ef06be5db07966e0c144b74e
> > Author: Julian Anastasov <ja@ssi.bg>
> > Date: Wed Apr 25 00:29:59 2012 +0300
> >
> > ipvs: add check in ftp for initialized core
> >
> > Avoid crash when registering ip_vs_ftp after
> > the IPVS core initialization for netns fails. Do this by
> > checking for present core (net->ipvs).
> >
> > Signed-off-by: Julian Anastasov <ja@ssi.bg>
> > Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> >
> > commit 8f9b9a2fad47af27e14b037395e03cd8278d96d7
> > Author: Julian Anastasov <ja@ssi.bg>
> > Date: Fri Apr 13 18:08:43 2012 +0300
> >
> > ipvs: fix crash in ip_vs_control_net_cleanup on unload
> >
> > commit 14e405461e664b777e2a5636e10b2ebf36a686ec (2.6.39)
> > ("Add __ip_vs_control_{init,cleanup}_sysctl()")
> > introduced regression due to wrong __net_init for
> > __ip_vs_control_cleanup_sysctl. This leads to crash when
> > the ip_vs module is unloaded.
> >
> > Fix it by changing __net_init to __net_exit for
> > the function that is already renamed to ip_vs_control_net_cleanup_sysctl.
> >
> > Signed-off-by: Julian Anastasov <ja@ssi.bg>
> > Signed-off-by: Hans Schillstrom <hans@schillstrom.com>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> > Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
> >
> > commit 7118c07a844d367560ee91adb2071bde2fabcdbf
> > Author: Sasha Levin <levinsasha928@gmail.com>
> > Date: Sat Apr 14 12:37:46 2012 -0400
> >
> > ipvs: Verify that IP_VS protocol has been registered
> >
> > The registration of a protocol might fail, there were no checks
> > and all registrations were assumed to be correct. This lead to
> > NULL ptr dereferences when apps tried registering.
> >
> > For example:
> >
> > [ 1293.226051] BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
> > [ 1293.227038] IP: [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> > [ 1293.227038] PGD 391de067 PUD 6c20b067 PMD 0
> > [ 1293.227038] Oops: 0000 [#1] PREEMPT SMP
> > [ 1293.227038] CPU 1
> > [ 1293.227038] Pid: 19609, comm: trinity Tainted: G W 3.4.0-rc1-next-20120405-sasha-dirty #57
> > [ 1293.227038] RIP: 0010:[<ffffffff822aacb0>] [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> > [ 1293.227038] RSP: 0018:ffff880038c1dd18 EFLAGS: 00010286
> > [ 1293.227038] RAX: ffffffffffffffc0 RBX: 0000000000001500 RCX: 0000000000010000
> > [ 1293.227038] RDX: 0000000000000000 RSI: ffff88003a2d5888 RDI: 0000000000000282
> > [ 1293.227038] RBP: ffff880038c1dd48 R08: 0000000000000000 R09: 0000000000000000
> > [ 1293.227038] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88003a2d5668
> > [ 1293.227038] R13: ffff88003a2d5988 R14: ffff8800696a8ff8 R15: 0000000000000000
> > [ 1293.227038] FS: 00007f01930d9700(0000) GS:ffff88007ce00000(0000) knlGS:0000000000000000
> > [ 1293.227038] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> > [ 1293.227038] CR2: 0000000000000018 CR3: 0000000065dfc000 CR4: 00000000000406e0
> > [ 1293.227038] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> > [ 1293.227038] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> > [ 1293.227038] Process trinity (pid: 19609, threadinfo ffff880038c1c000, task ffff88002dc73000)
> > [ 1293.227038] Stack:
> > [ 1293.227038] ffff880038c1dd48 00000000fffffff4 ffff8800696aada0 ffff8800694f5580
> > [ 1293.227038] ffffffff8369f1e0 0000000000001500 ffff880038c1dd98 ffffffff822a716b
> > [ 1293.227038] 0000000000000000 ffff8800696a8ff8 0000000000000015 ffff8800694f5580
> > [ 1293.227038] Call Trace:
> > [ 1293.227038] [<ffffffff822a716b>] ip_vs_app_inc_new+0xdb/0x180
> > [ 1293.227038] [<ffffffff822a7258>] register_ip_vs_app_inc+0x48/0x70
> > [ 1293.227038] [<ffffffff822b2fea>] __ip_vs_ftp_init+0xba/0x140
> > [ 1293.227038] [<ffffffff821c9060>] ops_init+0x80/0x90
> > [ 1293.227038] [<ffffffff821c90cb>] setup_net+0x5b/0xe0
> > [ 1293.227038] [<ffffffff821c9416>] copy_net_ns+0x76/0x100
> > [ 1293.227038] [<ffffffff810dc92b>] create_new_namespaces+0xfb/0x190
> > [ 1293.227038] [<ffffffff810dca21>] unshare_nsproxy_namespaces+0x61/0x80
> > [ 1293.227038] [<ffffffff810afd1f>] sys_unshare+0xff/0x290
> > [ 1293.227038] [<ffffffff8187622e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
> > [ 1293.227038] [<ffffffff82665539>] system_call_fastpath+0x16/0x1b
> > [ 1293.227038] Code: 89 c7 e8 34 91 3b 00 89 de 66 c1 ee 04 31 de 83 e6 0f 48 83 c6 22 48 c1 e6 04 4a 8b 14 26 49 8d 34 34 48 8d 42 c0 48 39 d6 74 13 <66> 39 58 58 74 22 48 8b 48 40 48 8d 41 c0 48 39 ce 75 ed 49 8d
> > [ 1293.227038] RIP [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> > [ 1293.227038] RSP <ffff880038c1dd18>
> > [ 1293.227038] CR2: 0000000000000018
> > [ 1293.379284] ---[ end trace 364ab40c7011a009 ]---
> > [ 1293.381182] Kernel panic - not syncing: Fatal exception in interrupt
> >
> > Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
> > Acked-by: Julian Anastasov <ja@ssi.bg>
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> > Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
> >
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [GIT PULL net] IPVS
2012-07-17 10:15 ` Pablo Neira Ayuso
@ 2012-07-18 0:01 ` Simon Horman
0 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-07-18 0:01 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Hans Schillstrom, Jesper Dangaard Brouer
On Tue, Jul 17, 2012 at 12:15:31PM +0200, Pablo Neira Ayuso wrote:
> On Tue, Jul 10, 2012 at 03:05:03PM +0200, Pablo Neira Ayuso wrote:
> > Hi Simon,
> >
> > On Tue, Jul 10, 2012 at 06:20:03PM +0900, Simon Horman wrote:
> > > On Mon, Apr 30, 2012 at 11:27:22AM +0200, Pablo Neira Ayuso wrote:
> > > > On Fri, Apr 27, 2012 at 09:53:54AM +0900, Simon Horman wrote:
> > > > > Hi Pablo,
> > > > >
> > > > > please consider the following 5 changes for 3.4, they are all bug fixes.
> > > > > I would also like these changes considered for stable.
> > > >
> > > > Please, ping me again once these have hit Linus tree to ask for
> > > > -stable submission.
> > >
> > > Sorry for letting this slip through the cracks.
> > >
> > > Please consider the following commits which are in Linus's tree for stable.
> > > Or I can submit them directly if that is easier.
> > >
> > > There are 7 patches listed below. The first 5 were the patches in this
> > > pull request. The last two were patches in a git pull request
> > > a few days earlier.
> >
> > That's fine, I can make it, but you have to include what stable
> > releases this will be applied, eg. patch 1 to releases 3.4 and 3.2.
> >
> > I think -stable maintainers will ask for that.
>
> Ping?
Sorry, I haven't got to this yet.
> > > commit 8537de8a7ab6681cc72fb0411ab1ba7fdba62dd0
> > > Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Date: Thu Apr 26 07:47:44 2012 +0200
> > >
> > > ipvs: kernel oops - do_ip_vs_get_ctl
> > >
> > > Change order of init so netns init is ready
> > > when register ioctl and netlink.
> > >
> > > Ver2
> > > Whitespace fixes and __init added.
> > >
> > > Reported-by: "Ryan O'Hara" <rohara@redhat.com>
> > > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Acked-by: Julian Anastasov <ja@ssi.bg>
> > > Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > >
> > > commit 582b8e3eadaec77788c1aa188081a8d5059c42a6
> > > Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Date: Thu Apr 26 09:45:35 2012 +0200
> > >
> > > ipvs: take care of return value from protocol init_netns
> > >
> > > ip_vs_create_timeout_table() can return NULL
> > > All functions protocol init_netns is affected of this patch.
> > >
> > > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Acked-by: Julian Anastasov <ja@ssi.bg>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > >
> > > commit 4b984cd50bc1b6d492175cd77bfabb78e76ffa67
> > > Author: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Date: Thu Apr 26 09:45:34 2012 +0200
> > >
> > > ipvs: null check of net->ipvs in lblc(r) shedulers
> > >
> > > Avoid crash when registering shedulers after
> > > the IPVS core initialization for netns fails. Do this by
> > > checking for present core (net->ipvs).
> > >
> > > Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Acked-by: Julian Anastasov <ja@ssi.bg>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > >
> > > commit 39f618b4fd95ae243d940ec64c961009c74e3333
> > > Author: Julian Anastasov <ja@ssi.bg>
> > > Date: Wed Apr 25 00:29:58 2012 +0300
> > >
> > > ipvs: reset ipvs pointer in netns
> > >
> > > Make sure net->ipvs is reset on netns cleanup or failed
> > > initialization. It is needed for IPVS applications to know that
> > > IPVS core is not loaded in netns.
> > >
> > > Signed-off-by: Julian Anastasov <ja@ssi.bg>
> > > Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > >
> > > commit 8d08d71ce59438a6ef06be5db07966e0c144b74e
> > > Author: Julian Anastasov <ja@ssi.bg>
> > > Date: Wed Apr 25 00:29:59 2012 +0300
> > >
> > > ipvs: add check in ftp for initialized core
> > >
> > > Avoid crash when registering ip_vs_ftp after
> > > the IPVS core initialization for netns fails. Do this by
> > > checking for present core (net->ipvs).
> > >
> > > Signed-off-by: Julian Anastasov <ja@ssi.bg>
> > > Acked-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > >
> > > commit 8f9b9a2fad47af27e14b037395e03cd8278d96d7
> > > Author: Julian Anastasov <ja@ssi.bg>
> > > Date: Fri Apr 13 18:08:43 2012 +0300
> > >
> > > ipvs: fix crash in ip_vs_control_net_cleanup on unload
> > >
> > > commit 14e405461e664b777e2a5636e10b2ebf36a686ec (2.6.39)
> > > ("Add __ip_vs_control_{init,cleanup}_sysctl()")
> > > introduced regression due to wrong __net_init for
> > > __ip_vs_control_cleanup_sysctl. This leads to crash when
> > > the ip_vs module is unloaded.
> > >
> > > Fix it by changing __net_init to __net_exit for
> > > the function that is already renamed to ip_vs_control_net_cleanup_sysctl.
> > >
> > > Signed-off-by: Julian Anastasov <ja@ssi.bg>
> > > Signed-off-by: Hans Schillstrom <hans@schillstrom.com>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > > Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
> > >
> > > commit 7118c07a844d367560ee91adb2071bde2fabcdbf
> > > Author: Sasha Levin <levinsasha928@gmail.com>
> > > Date: Sat Apr 14 12:37:46 2012 -0400
> > >
> > > ipvs: Verify that IP_VS protocol has been registered
> > >
> > > The registration of a protocol might fail, there were no checks
> > > and all registrations were assumed to be correct. This lead to
> > > NULL ptr dereferences when apps tried registering.
> > >
> > > For example:
> > >
> > > [ 1293.226051] BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
> > > [ 1293.227038] IP: [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> > > [ 1293.227038] PGD 391de067 PUD 6c20b067 PMD 0
> > > [ 1293.227038] Oops: 0000 [#1] PREEMPT SMP
> > > [ 1293.227038] CPU 1
> > > [ 1293.227038] Pid: 19609, comm: trinity Tainted: G W 3.4.0-rc1-next-20120405-sasha-dirty #57
> > > [ 1293.227038] RIP: 0010:[<ffffffff822aacb0>] [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> > > [ 1293.227038] RSP: 0018:ffff880038c1dd18 EFLAGS: 00010286
> > > [ 1293.227038] RAX: ffffffffffffffc0 RBX: 0000000000001500 RCX: 0000000000010000
> > > [ 1293.227038] RDX: 0000000000000000 RSI: ffff88003a2d5888 RDI: 0000000000000282
> > > [ 1293.227038] RBP: ffff880038c1dd48 R08: 0000000000000000 R09: 0000000000000000
> > > [ 1293.227038] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88003a2d5668
> > > [ 1293.227038] R13: ffff88003a2d5988 R14: ffff8800696a8ff8 R15: 0000000000000000
> > > [ 1293.227038] FS: 00007f01930d9700(0000) GS:ffff88007ce00000(0000) knlGS:0000000000000000
> > > [ 1293.227038] CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b
> > > [ 1293.227038] CR2: 0000000000000018 CR3: 0000000065dfc000 CR4: 00000000000406e0
> > > [ 1293.227038] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
> > > [ 1293.227038] DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
> > > [ 1293.227038] Process trinity (pid: 19609, threadinfo ffff880038c1c000, task ffff88002dc73000)
> > > [ 1293.227038] Stack:
> > > [ 1293.227038] ffff880038c1dd48 00000000fffffff4 ffff8800696aada0 ffff8800694f5580
> > > [ 1293.227038] ffffffff8369f1e0 0000000000001500 ffff880038c1dd98 ffffffff822a716b
> > > [ 1293.227038] 0000000000000000 ffff8800696a8ff8 0000000000000015 ffff8800694f5580
> > > [ 1293.227038] Call Trace:
> > > [ 1293.227038] [<ffffffff822a716b>] ip_vs_app_inc_new+0xdb/0x180
> > > [ 1293.227038] [<ffffffff822a7258>] register_ip_vs_app_inc+0x48/0x70
> > > [ 1293.227038] [<ffffffff822b2fea>] __ip_vs_ftp_init+0xba/0x140
> > > [ 1293.227038] [<ffffffff821c9060>] ops_init+0x80/0x90
> > > [ 1293.227038] [<ffffffff821c90cb>] setup_net+0x5b/0xe0
> > > [ 1293.227038] [<ffffffff821c9416>] copy_net_ns+0x76/0x100
> > > [ 1293.227038] [<ffffffff810dc92b>] create_new_namespaces+0xfb/0x190
> > > [ 1293.227038] [<ffffffff810dca21>] unshare_nsproxy_namespaces+0x61/0x80
> > > [ 1293.227038] [<ffffffff810afd1f>] sys_unshare+0xff/0x290
> > > [ 1293.227038] [<ffffffff8187622e>] ? trace_hardirqs_on_thunk+0x3a/0x3f
> > > [ 1293.227038] [<ffffffff82665539>] system_call_fastpath+0x16/0x1b
> > > [ 1293.227038] Code: 89 c7 e8 34 91 3b 00 89 de 66 c1 ee 04 31 de 83 e6 0f 48 83 c6 22 48 c1 e6 04 4a 8b 14 26 49 8d 34 34 48 8d 42 c0 48 39 d6 74 13 <66> 39 58 58 74 22 48 8b 48 40 48 8d 41 c0 48 39 ce 75 ed 49 8d
> > > [ 1293.227038] RIP [<ffffffff822aacb0>] tcp_register_app+0x60/0xb0
> > > [ 1293.227038] RSP <ffff880038c1dd18>
> > > [ 1293.227038] CR2: 0000000000000018
> > > [ 1293.379284] ---[ end trace 364ab40c7011a009 ]---
> > > [ 1293.381182] Kernel panic - not syncing: Fatal exception in interrupt
> > >
> > > Signed-off-by: Sasha Levin <levinsasha928@gmail.com>
> > > Acked-by: Julian Anastasov <ja@ssi.bg>
> > > Signed-off-by: Simon Horman <horms@verge.net.au>
> > > Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
> > >
>
^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: [GIT PULL net] IPVS
2012-04-23 12:17 Simon Horman
@ 2012-04-23 12:44 ` Simon Horman
0 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2012-04-23 12:44 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Sasha Levin
On Mon, Apr 23, 2012 at 09:17:06PM +0900, Simon Horman wrote:
> Hi Pablo,
>
> please consider the following two changes for 3.4. They are from Sasha
> Levin and resolve bugs on initialisation failure in IPVS.
>
Sorry, could you please ignore this.
I will repost a fresh pull request shortly.
^ permalink raw reply [flat|nested] 16+ messages in thread
* [GIT PULL net] IPVS
@ 2012-04-23 12:17 Simon Horman
2012-04-23 12:44 ` Simon Horman
0 siblings, 1 reply; 16+ messages in thread
From: Simon Horman @ 2012-04-23 12:17 UTC (permalink / raw)
To: Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, Sasha Levin
Hi Pablo,
please consider the following two changes for 3.4. They are from Sasha
Levin and resolve bugs on initialisation failure in IPVS.
The following changes since commit 6ba900676bec8baaf61aa2f85b7345c0e65774d9:
netfilter: nf_conntrack: fix incorrect logic in nf_conntrack_init_net (2012-04-10 13:00:38 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/horms/ipvs.git master
for you to fetch changes up to eb93daa9396acdcb9aea47ef125a60228f174deb:
netfilter: ipvs: use GFP_KERNEL allocation where possible (2012-04-23 17:00:52 +0900)
----------------------------------------------------------------
Sasha Levin (2):
netfilter: ipvs: Verify that IP_VS protocol has been registered
netfilter: ipvs: use GFP_KERNEL allocation where possible
net/netfilter/ipvs/ip_vs_proto.c | 29 +++++++++++++++++++----------
1 file changed, 19 insertions(+), 10 deletions(-)
^ permalink raw reply [flat|nested] 16+ messages in thread
* [GIT PULL net] IPVS
@ 2011-10-11 1:54 Simon Horman
0 siblings, 0 replies; 16+ messages in thread
From: Simon Horman @ 2011-10-11 1:54 UTC (permalink / raw)
To: Patrick McHardy, Pablo Neira Ayuso
Cc: lvs-devel, netdev, netfilter-devel, Wensong Zhang,
Julian Anastasov, David Miller
Hi Pablo, Hi Dave,
please consider the following change which is based on Dave's net tree.
The following changes since commit 3ee72ca99288f1de95ec9c570e43f531c8799f06:
Merge git://github.com/davem330/net (2011-10-06 16:15:10 -0700)
are available in the git repository at:
git@github.com:horms/ipvs.git master
Hans Schillstrom (1):
IPVS netns shutdown/startup dead-lock
include/net/ip_vs.h | 1 +
net/netfilter/ipvs/ip_vs_ctl.c | 131 ++++++++++++++++++++++++---------------
net/netfilter/ipvs/ip_vs_sync.c | 6 ++
3 files changed, 87 insertions(+), 51 deletions(-)
^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~2012-07-18 0:01 UTC | newest]
Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-04-27 0:53 [GIT PULL net] IPVS Simon Horman
2012-04-27 0:53 ` [PATCH 1/5] ipvs: add check in ftp for initialized core Simon Horman
2012-04-27 0:53 ` [PATCH 2/5] ipvs: reset ipvs pointer in netns Simon Horman
2012-04-27 0:53 ` [PATCH 3/5] ipvs: null check of net->ipvs in lblc(r) shedulers Simon Horman
2012-04-29 23:43 ` Pablo Neira Ayuso
2012-04-30 6:35 ` Simon Horman
2012-04-27 0:53 ` [PATCH 4/5] ipvs: take care of return value from protocol init_netns Simon Horman
2012-04-27 0:53 ` [PATCH 5/5] ipvs: kernel oops - do_ip_vs_get_ctl Simon Horman
2012-04-30 9:27 ` [GIT PULL net] IPVS Pablo Neira Ayuso
2012-07-10 9:20 ` Simon Horman
2012-07-10 13:05 ` Pablo Neira Ayuso
2012-07-17 10:15 ` Pablo Neira Ayuso
2012-07-18 0:01 ` Simon Horman
-- strict thread matches above, loose matches on Subject: below --
2012-04-23 12:17 Simon Horman
2012-04-23 12:44 ` Simon Horman
2011-10-11 1:54 Simon Horman
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.