|
@@ -114,7 +114,7 @@ struct ip_vs_lblc_table {
|
|
|
/*
|
|
|
* IPVS LBLC sysctl table
|
|
|
*/
|
|
|
-
|
|
|
+#ifdef CONFIG_SYSCTL
|
|
|
static ctl_table vs_vars_table[] = {
|
|
|
{
|
|
|
.procname = "lblc_expiration",
|
|
@@ -125,6 +125,7 @@ static ctl_table vs_vars_table[] = {
|
|
|
},
|
|
|
{ }
|
|
|
};
|
|
|
+#endif
|
|
|
|
|
|
static inline void ip_vs_lblc_free(struct ip_vs_lblc_entry *en)
|
|
|
{
|
|
@@ -548,6 +549,7 @@ static struct ip_vs_scheduler ip_vs_lblc_scheduler =
|
|
|
/*
|
|
|
* per netns init.
|
|
|
*/
|
|
|
+#ifdef CONFIG_SYSCTL
|
|
|
static int __net_init __ip_vs_lblc_init(struct net *net)
|
|
|
{
|
|
|
struct netns_ipvs *ipvs = net_ipvs(net);
|
|
@@ -563,7 +565,6 @@ static int __net_init __ip_vs_lblc_init(struct net *net)
|
|
|
ipvs->sysctl_lblc_expiration = DEFAULT_EXPIRATION;
|
|
|
ipvs->lblc_ctl_table[0].data = &ipvs->sysctl_lblc_expiration;
|
|
|
|
|
|
-#ifdef CONFIG_SYSCTL
|
|
|
ipvs->lblc_ctl_header =
|
|
|
register_net_sysctl_table(net, net_vs_ctl_path,
|
|
|
ipvs->lblc_ctl_table);
|
|
@@ -572,7 +573,6 @@ static int __net_init __ip_vs_lblc_init(struct net *net)
|
|
|
kfree(ipvs->lblc_ctl_table);
|
|
|
return -ENOMEM;
|
|
|
}
|
|
|
-#endif
|
|
|
|
|
|
return 0;
|
|
|
}
|
|
@@ -581,14 +581,19 @@ static void __net_exit __ip_vs_lblc_exit(struct net *net)
|
|
|
{
|
|
|
struct netns_ipvs *ipvs = net_ipvs(net);
|
|
|
|
|
|
-#ifdef CONFIG_SYSCTL
|
|
|
unregister_net_sysctl_table(ipvs->lblc_ctl_header);
|
|
|
-#endif
|
|
|
|
|
|
if (!net_eq(net, &init_net))
|
|
|
kfree(ipvs->lblc_ctl_table);
|
|
|
}
|
|
|
|
|
|
+#else
|
|
|
+
|
|
|
+static int __net_init __ip_vs_lblc_init(struct net *net) { return 0; }
|
|
|
+static void __net_exit __ip_vs_lblc_exit(struct net *net) { }
|
|
|
+
|
|
|
+#endif
|
|
|
+
|
|
|
static struct pernet_operations ip_vs_lblc_ops = {
|
|
|
.init = __ip_vs_lblc_init,
|
|
|
.exit = __ip_vs_lblc_exit,
|