2022-04-07 09:38:30

by Yue Haibing

[permalink] [raw]
Subject: [PATCH -next] reboot: Fix build warning without CONFIG_SYSFS

If CONFIG_SYSFS is n, build warn:

kernel/reboot.c:443:20: error: ‘kernel_reboot_sysctls_init’ defined but not used [-Werror=unused-function]
static void __init kernel_reboot_sysctls_init(void)
^~~~~~~~~~~~~~~~~~~~~~~~~~

Move kernel_reboot_sysctls_init() to #ifdef block to fix this.

Fixes: 6e73c8344931 ("kernel/reboot: move reboot sysctls to its own file")
Signed-off-by: YueHaibing <[email protected]>
---
kernel/reboot.c | 54 ++++++++++++++++++++++++-------------------------
1 file changed, 27 insertions(+), 27 deletions(-)

diff --git a/kernel/reboot.c b/kernel/reboot.c
index ed4e6dfb7d44..ecbf09ea03c5 100644
--- a/kernel/reboot.c
+++ b/kernel/reboot.c
@@ -421,33 +421,6 @@ void ctrl_alt_del(void)
static char poweroff_cmd[POWEROFF_CMD_PATH_LEN] = "/sbin/poweroff";
static const char reboot_cmd[] = "/sbin/reboot";

-#ifdef CONFIG_SYSCTL
-static struct ctl_table kern_reboot_table[] = {
- {
- .procname = "poweroff_cmd",
- .data = &poweroff_cmd,
- .maxlen = POWEROFF_CMD_PATH_LEN,
- .mode = 0644,
- .proc_handler = proc_dostring,
- },
- {
- .procname = "ctrl-alt-del",
- .data = &C_A_D,
- .maxlen = sizeof(int),
- .mode = 0644,
- .proc_handler = proc_dointvec,
- },
- { }
-};
-
-static void __init kernel_reboot_sysctls_init(void)
-{
- register_sysctl_init("kernel", kern_reboot_table);
-}
-#else
-#define kernel_reboot_sysctls_init() do { } while (0)
-#endif /* CONFIG_SYSCTL */
-
static int run_cmd(const char *cmd)
{
char **argv;
@@ -895,6 +868,33 @@ static struct attribute *reboot_attrs[] = {
NULL,
};

+#ifdef CONFIG_SYSCTL
+static struct ctl_table kern_reboot_table[] = {
+ {
+ .procname = "poweroff_cmd",
+ .data = &poweroff_cmd,
+ .maxlen = POWEROFF_CMD_PATH_LEN,
+ .mode = 0644,
+ .proc_handler = proc_dostring,
+ },
+ {
+ .procname = "ctrl-alt-del",
+ .data = &C_A_D,
+ .maxlen = sizeof(int),
+ .mode = 0644,
+ .proc_handler = proc_dointvec,
+ },
+ { }
+};
+
+static void __init kernel_reboot_sysctls_init(void)
+{
+ register_sysctl_init("kernel", kern_reboot_table);
+}
+#else
+#define kernel_reboot_sysctls_init() do { } while (0)
+#endif /* CONFIG_SYSCTL */
+
static const struct attribute_group reboot_attr_group = {
.attrs = reboot_attrs,
};
--
2.17.1


2022-04-27 07:30:34

by Luis Chamberlain

[permalink] [raw]
Subject: Re: [PATCH -next] reboot: Fix build warning without CONFIG_SYSFS

Your subject says CONFIG_SYSFS but this is for CONFIG_SYSCTL right?
Can you fix and resubmit and based it on sysctl-next [0]?

If I've missed any other patches please resubmit as well and use
the [PATCH sysctl-next] as prefix.

[0] https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=sysctl-next

Luis

On Wed, Apr 27, 2022 at 09:56:35AM +0800, YueHaibing wrote:
> ping...
>
> On 2022/4/7 15:48, YueHaibing wrote:
> > If CONFIG_SYSFS is n, build warn:
> >
> > kernel/reboot.c:443:20: error: ‘kernel_reboot_sysctls_init’ defined but not used [-Werror=unused-function]
> > static void __init kernel_reboot_sysctls_init(void)
> > ^~~~~~~~~~~~~~~~~~~~~~~~~~
> >
> > Move kernel_reboot_sysctls_init() to #ifdef block to fix this.
> >
> > Fixes: 6e73c8344931 ("kernel/reboot: move reboot sysctls to its own file")
> > Signed-off-by: YueHaibing <[email protected]>
> > ---
> > kernel/reboot.c | 54 ++++++++++++++++++++++++-------------------------
> > 1 file changed, 27 insertions(+), 27 deletions(-)
> >
> > diff --git a/kernel/reboot.c b/kernel/reboot.c
> > index ed4e6dfb7d44..ecbf09ea03c5 100644
> > --- a/kernel/reboot.c
> > +++ b/kernel/reboot.c
> > @@ -421,33 +421,6 @@ void ctrl_alt_del(void)
> > static char poweroff_cmd[POWEROFF_CMD_PATH_LEN] = "/sbin/poweroff";
> > static const char reboot_cmd[] = "/sbin/reboot";
> >
> > -#ifdef CONFIG_SYSCTL
> > -static struct ctl_table kern_reboot_table[] = {
> > - {
> > - .procname = "poweroff_cmd",
> > - .data = &poweroff_cmd,
> > - .maxlen = POWEROFF_CMD_PATH_LEN,
> > - .mode = 0644,
> > - .proc_handler = proc_dostring,
> > - },
> > - {
> > - .procname = "ctrl-alt-del",
> > - .data = &C_A_D,
> > - .maxlen = sizeof(int),
> > - .mode = 0644,
> > - .proc_handler = proc_dointvec,
> > - },
> > - { }
> > -};
> > -
> > -static void __init kernel_reboot_sysctls_init(void)
> > -{
> > - register_sysctl_init("kernel", kern_reboot_table);
> > -}
> > -#else
> > -#define kernel_reboot_sysctls_init() do { } while (0)
> > -#endif /* CONFIG_SYSCTL */
> > -
> > static int run_cmd(const char *cmd)
> > {
> > char **argv;
> > @@ -895,6 +868,33 @@ static struct attribute *reboot_attrs[] = {
> > NULL,
> > };
> >
> > +#ifdef CONFIG_SYSCTL
> > +static struct ctl_table kern_reboot_table[] = {
> > + {
> > + .procname = "poweroff_cmd",
> > + .data = &poweroff_cmd,
> > + .maxlen = POWEROFF_CMD_PATH_LEN,
> > + .mode = 0644,
> > + .proc_handler = proc_dostring,
> > + },
> > + {
> > + .procname = "ctrl-alt-del",
> > + .data = &C_A_D,
> > + .maxlen = sizeof(int),
> > + .mode = 0644,
> > + .proc_handler = proc_dointvec,
> > + },
> > + { }
> > +};
> > +
> > +static void __init kernel_reboot_sysctls_init(void)
> > +{
> > + register_sysctl_init("kernel", kern_reboot_table);
> > +}
> > +#else
> > +#define kernel_reboot_sysctls_init() do { } while (0)
> > +#endif /* CONFIG_SYSCTL */
> > +
> > static const struct attribute_group reboot_attr_group = {
> > .attrs = reboot_attrs,
> > };
> >