Re: [PATCH -next v2] module: fix build error when CONFIG_SYSFS is disabled

From: Stephen Boyd
Date: Tue May 25 2021 - 14:22:04 EST


Quoting Bixuan Cui (2021-05-25 03:50:49)
> Fix build error when disable CONFIG_SYSFS:
> kernel/module.c:2805:8: error: implicit declaration of function ���sect_empty���; did you mean ���desc_empty���? [-Werror=implicit-function-declaration]
> 2805 | if (!sect_empty(sechdr) && sechdr->sh_type == SHT_NOTE &&
>
> Fixes: 9ee6682aa528 ("module: add printk formats to add module build ID to stacktraces")
> Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
> Signed-off-by: Bixuan Cui <cuibixuan@xxxxxxxxxx>
> Signed-off-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>

Ok. The SoB chain is wrong but you may have my SoB.

> ---
> Changes from v2:
> Put the sect_empty() definition outside of #ifdef CONFIG_SYSFS.
>
> kernel/module.c | 12 +++++++-----
> 1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/kernel/module.c b/kernel/module.c
> index decf4601e943..0543b44db81d 100644
> --- a/kernel/module.c
> +++ b/kernel/module.c
> @@ -1462,6 +1462,13 @@ resolve_symbol_wait(struct module *mod,
> return ksym;
> }
>
> +#ifdef CONFIG_KALLSYMS
> +static inline bool sect_empty(const Elf_Shdr *sect)
> +{
> + return !(sect->sh_flags & SHF_ALLOC) || sect->sh_size == 0;
> +}
> +#endif
> +
> /*
> * /sys/module/foo/sections stuff
> * J. Corbet <corbet@xxxxxxx>
> @@ -1469,11 +1476,6 @@ resolve_symbol_wait(struct module *mod,
> #ifdef CONFIG_SYSFS
>
> #ifdef CONFIG_KALLSYMS
> -static inline bool sect_empty(const Elf_Shdr *sect)
> -{
> - return !(sect->sh_flags & SHF_ALLOC) || sect->sh_size == 0;
> -}
> -
> struct module_sect_attr {
> struct bin_attribute battr;
> unsigned long address;
> --
> 2.17.1
>