mainline inclusion from mainline-v5.18-rc1 commit d9f50991592513cc7633684cbaff65022cfa6816 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/I76JHC CVE: NA
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/ne...
--------------------------------
when CONFIG_SYSCTL not set, smc_sysctl_net_init/exit need to be static inline to avoid missing-prototypes if compile with W=1.
Since __net_exit has noinline annotation when CONFIG_NET_NS not set, it should not be used with static inline. So remove the __net_init/exit when CONFIG_SYSCTL not set.
Fixes: 7de8eb0d9039 ("net/smc: fix compile warning for smc_sysctl") Signed-off-by: Dust Li dust.li@linux.alibaba.com Link: https://lore.kernel.org/r/20220309033051.41893-1-dust.li@linux.alibaba.com Signed-off-by: Jakub Kicinski kuba@kernel.org Signed-off-by: Litao Jiao jiaolitao@sangfor.com.cn --- net/smc/smc_sysctl.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/net/smc/smc_sysctl.h b/net/smc/smc_sysctl.h index 9a369bca8123..f04699bc8bbc 100644 --- a/net/smc/smc_sysctl.h +++ b/net/smc/smc_sysctl.h @@ -20,14 +20,13 @@ void __net_exit smc_sysctl_net_exit(struct net *net);
#else
-int __net_init smc_sysctl_net_init(struct net *net) +static inline int smc_sysctl_net_init(struct net *net) { return 0; }
-void __net_exit smc_sysctl_net_exit(struct net *net) { } +static inline void smc_sysctl_net_exit(struct net *net) { }
#endif /* CONFIG_SYSCTL */
#endif /* _SMC_SYSCTL_H */ -