diff mbox series

proc/sysctl: make firmware loader table conditional

Message ID 20190617130014.1713870-1-arnd@arndb.de
State New
Headers show
Series proc/sysctl: make firmware loader table conditional | expand

Commit Message

Arnd Bergmann June 17, 2019, 12:59 p.m. UTC
We get a link error in the firmware loader fallback table,
which now refers to the global sysctl_vals variable:

drivers/base/firmware_loader/fallback_table.o:(.data+0x2c): undefined reference to `sysctl_vals'
drivers/base/firmware_loader/fallback_table.o:(.data+0x30): undefined reference to `sysctl_vals'
drivers/base/firmware_loader/fallback_table.o:(.data+0x50): undefined reference to `sysctl_vals'
drivers/base/firmware_loader/fallback_table.o:(.data+0x54): undefined reference to `sysctl_vals'

Add an #ifdef that only builds that table when it is being
used.

Fixes: c81c506545f4 ("proc/sysctl: add shared variables for range check")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
 drivers/base/firmware_loader/fallback_table.c | 2 ++
 1 file changed, 2 insertions(+)

-- 
2.20.0

Comments

Matteo Croce June 17, 2019, 2:41 p.m. UTC | #1
On Mon, Jun 17, 2019 at 3:00 PM Arnd Bergmann <arnd@arndb.de> wrote:
>

> We get a link error in the firmware loader fallback table,

> which now refers to the global sysctl_vals variable:

>

> drivers/base/firmware_loader/fallback_table.o:(.data+0x2c): undefined reference to `sysctl_vals'

> drivers/base/firmware_loader/fallback_table.o:(.data+0x30): undefined reference to `sysctl_vals'

> drivers/base/firmware_loader/fallback_table.o:(.data+0x50): undefined reference to `sysctl_vals'

> drivers/base/firmware_loader/fallback_table.o:(.data+0x54): undefined reference to `sysctl_vals'

>

> Add an #ifdef that only builds that table when it is being

> used.

>

> Fixes: c81c506545f4 ("proc/sysctl: add shared variables for range check")

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

> ---

>  drivers/base/firmware_loader/fallback_table.c | 2 ++

>  1 file changed, 2 insertions(+)

>

> diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c

> index 58d4a1263480..ba9d30b28edc 100644

> --- a/drivers/base/firmware_loader/fallback_table.c

> +++ b/drivers/base/firmware_loader/fallback_table.c

> @@ -23,6 +23,7 @@ struct firmware_fallback_config fw_fallback_config = {

>  };

>  EXPORT_SYMBOL_GPL(fw_fallback_config);

>

> +#ifdef CONFIG_SYSCTL

>  struct ctl_table firmware_config_table[] = {

>         {

>                 .procname       = "force_sysfs_fallback",

> @@ -45,3 +46,4 @@ struct ctl_table firmware_config_table[] = {

>         { }

>  };

>  EXPORT_SYMBOL_GPL(firmware_config_table);

> +#endif

> --

> 2.20.0

>


Hi Arnd,

I think I've posted a similar patch before, I don't know if it's
already in linux-next:

https://lore.kernel.org/linux-next/20190531012649.31797-1-mcroce@redhat.com/

Regards,
-- 
Matteo Croce
per aspera ad upstream
Arnd Bergmann June 17, 2019, 3 p.m. UTC | #2
On Mon, Jun 17, 2019 at 4:42 PM Matteo Croce <mcroce@redhat.com> wrote:
> >  drivers/base/firmware_loader/fallback_table.c | 2 ++

> >  1 file changed, 2 insertions(+)

> >

> > diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c

> > index 58d4a1263480..ba9d30b28edc 100644

> > --- a/drivers/base/firmware_loader/fallback_table.c

> > +++ b/drivers/base/firmware_loader/fallback_table.c

> > @@ -23,6 +23,7 @@ struct firmware_fallback_config fw_fallback_config = {

> >  };

> >  EXPORT_SYMBOL_GPL(fw_fallback_config);

> >

> > +#ifdef CONFIG_SYSCTL

> >  struct ctl_table firmware_config_table[] = {

> >         {

> >                 .procname       = "force_sysfs_fallback",

> > @@ -45,3 +46,4 @@ struct ctl_table firmware_config_table[] = {

> >         { }

> >  };

> >  EXPORT_SYMBOL_GPL(firmware_config_table);

> > +#endif

> > --

> > 2.20.0

> >

>

> Hi Arnd,

>

> I think I've posted a similar patch before, I don't know if it's

> already in linux-next:

>

> https://lore.kernel.org/linux-next/20190531012649.31797-1-mcroce@redhat.com/

>


Indeed, that is almost the same patch. Not sure what happened.

As Stephen replied to your patch, he had picked it up originally.
Maybe it got lost in a rebase since then.

        Arnd
diff mbox series

Patch

diff --git a/drivers/base/firmware_loader/fallback_table.c b/drivers/base/firmware_loader/fallback_table.c
index 58d4a1263480..ba9d30b28edc 100644
--- a/drivers/base/firmware_loader/fallback_table.c
+++ b/drivers/base/firmware_loader/fallback_table.c
@@ -23,6 +23,7 @@  struct firmware_fallback_config fw_fallback_config = {
 };
 EXPORT_SYMBOL_GPL(fw_fallback_config);
 
+#ifdef CONFIG_SYSCTL
 struct ctl_table firmware_config_table[] = {
 	{
 		.procname	= "force_sysfs_fallback",
@@ -45,3 +46,4 @@  struct ctl_table firmware_config_table[] = {
 	{ }
 };
 EXPORT_SYMBOL_GPL(firmware_config_table);
+#endif