diff mbox series

[next] net: fix build without CONFIG_SYSCTL definition

Message ID 20200918050832.1556691-1-maheshb@google.com
State Accepted
Delegated to: David Miller
Headers show
Series [next] net: fix build without CONFIG_SYSCTL definition | expand

Commit Message

Earlier commit 316cdaa1158a ("net: add option to not create fall-back
tunnels in root-ns as well") removed the CONFIG_SYSCTL to enable the
kernel-commandline to work. However, this variable gets defined only
when CONFIG_SYSCTL option is selected.

With this change the behavior would default to creating fall-back
tunnels in all namespaces when CONFIG_SYSCTL is not selected and
the kernel commandline option will be ignored.

Fixes: 316cdaa1158a ("net: add option to not create fall-back tunnels in root-ns as well")
Signed-off-by: Mahesh Bandewar <maheshb@google.com>
Reported-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: kernel test robot <lkp@intel.com>
---
 include/linux/netdevice.h | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Randy Dunlap Sept. 18, 2020, 5:24 a.m. UTC | #1
On 9/17/20 10:08 PM, Mahesh Bandewar wrote:
> Earlier commit 316cdaa1158a ("net: add option to not create fall-back
> tunnels in root-ns as well") removed the CONFIG_SYSCTL to enable the
> kernel-commandline to work. However, this variable gets defined only
> when CONFIG_SYSCTL option is selected.
> 
> With this change the behavior would default to creating fall-back
> tunnels in all namespaces when CONFIG_SYSCTL is not selected and
> the kernel commandline option will be ignored.
> 
> Fixes: 316cdaa1158a ("net: add option to not create fall-back tunnels in root-ns as well")
> Signed-off-by: Mahesh Bandewar <maheshb@google.com>
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>

Acked-by: Randy Dunlap <rdunlap@infradead.org> # build-tested

Thanks.


> ---
>  include/linux/netdevice.h | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
> index 909b1fbb0481..fef0eb96cf69 100644
> --- a/include/linux/netdevice.h
> +++ b/include/linux/netdevice.h
> @@ -634,8 +634,9 @@ extern int sysctl_devconf_inherit_init_net;
>   */
>  static inline bool net_has_fallback_tunnels(const struct net *net)
>  {
> -	return (net == &init_net && sysctl_fb_tunnels_only_for_init_net == 1) ||
> -	       !sysctl_fb_tunnels_only_for_init_net;
> +	return !IS_ENABLED(CONFIG_SYSCTL) ||
> +	       !sysctl_fb_tunnels_only_for_init_net ||
> +	       (net == &init_net && sysctl_fb_tunnels_only_for_init_net == 1);
>  }
>  
>  static inline int netdev_queue_numa_node_read(const struct netdev_queue *q)
>
David Miller Sept. 18, 2020, 9:14 p.m. UTC | #2
From: Mahesh Bandewar <maheshb@google.com>
Date: Thu, 17 Sep 2020 22:08:32 -0700

> Earlier commit 316cdaa1158a ("net: add option to not create fall-back
> tunnels in root-ns as well") removed the CONFIG_SYSCTL to enable the
> kernel-commandline to work. However, this variable gets defined only
> when CONFIG_SYSCTL option is selected.
> 
> With this change the behavior would default to creating fall-back
> tunnels in all namespaces when CONFIG_SYSCTL is not selected and
> the kernel commandline option will be ignored.
> 
> Fixes: 316cdaa1158a ("net: add option to not create fall-back tunnels in root-ns as well")
> Signed-off-by: Mahesh Bandewar <maheshb@google.com>
> Reported-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>

Applied.
diff mbox series

Patch

diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 909b1fbb0481..fef0eb96cf69 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -634,8 +634,9 @@  extern int sysctl_devconf_inherit_init_net;
  */
 static inline bool net_has_fallback_tunnels(const struct net *net)
 {
-	return (net == &init_net && sysctl_fb_tunnels_only_for_init_net == 1) ||
-	       !sysctl_fb_tunnels_only_for_init_net;
+	return !IS_ENABLED(CONFIG_SYSCTL) ||
+	       !sysctl_fb_tunnels_only_for_init_net ||
+	       (net == &init_net && sysctl_fb_tunnels_only_for_init_net == 1);
 }
 
 static inline int netdev_queue_numa_node_read(const struct netdev_queue *q)