[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250728135753.432695A72-agordeev@linux.ibm.com>
Date: Mon, 28 Jul 2025 15:57:53 +0200
From: Alexander Gordeev <agordeev@...ux.ibm.com>
To: Alexey Gladkov <legion@...nel.org>
Cc: Masahiro Yamada <masahiroy@...nel.org>, Petr Pavlu <petr.pavlu@...e.com>,
Luis Chamberlain <mcgrof@...nel.org>,
Sami Tolvanen <samitolvanen@...gle.com>,
Daniel Gomez <da.gomez@...sung.com>,
Nathan Chancellor <nathan@...nel.org>,
Nicolas Schier <nicolas.schier@...ux.dev>,
linux-kernel@...r.kernel.org, linux-modules@...r.kernel.org,
linux-kbuild@...r.kernel.org
Subject: Re: [PATCH v5 03/10] kbuild: keep .modinfo section in
vmlinux.unstripped
On Thu, Jul 24, 2025 at 03:49:40PM +0200, Alexey Gladkov wrote:
Hi Alexey, Masahiro,
> From: Masahiro Yamada <masahiroy@...nel.org>
>
> Keep the .modinfo section during linking, but strip it from the final
> vmlinux.
>
> Adjust scripts/mksysmap to exclude modinfo symbols from kallsyms.
>
> This change will allow the next commit to extract the .modinfo section
> from the vmlinux.unstripped intermediate.
>
> Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
> ---
> include/asm-generic/vmlinux.lds.h | 2 +-
> scripts/Makefile.vmlinux | 2 +-
> scripts/mksysmap | 3 +++
> 3 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
> index fa5f19b8d53a..1791665006f9 100644
> --- a/include/asm-generic/vmlinux.lds.h
> +++ b/include/asm-generic/vmlinux.lds.h
> @@ -831,6 +831,7 @@ defined(CONFIG_AUTOFDO_CLANG) || defined(CONFIG_PROPELLER_CLANG)
>
> /* Required sections not related to debugging. */
> #define ELF_DETAILS \
> + .modinfo : { *(.modinfo) } \
FWIW, to me .modinfo logically does not quite belong to ELF_DETAILS,
since it is not about ELF.
I would guess, that you want to make a minimal code impact to the
linker scripts, but with that you turn .modinfo the only section
among ones that do not make it to the final image:
STABS_DEBUG
DWARF_DEBUG
ELF_DETAILS
That immediately breaks s390, but also is a call for trouble in
the future, as far as I am concerned.
Would it makes sense to introduce e.g MODINFO instead?
> .comment 0 : { *(.comment) } \
> .symtab 0 : { *(.symtab) } \
> .strtab 0 : { *(.strtab) } \
> @@ -1044,7 +1045,6 @@ defined(CONFIG_AUTOFDO_CLANG) || defined(CONFIG_PROPELLER_CLANG)
> *(.discard.*) \
> *(.export_symbol) \
> *(.no_trim_symbol) \
> - *(.modinfo) \
> /* ld.bfd warns about .gnu.version* even when not emitted */ \
> *(.gnu.version*) \
Thanks!
Powered by blists - more mailing lists