Commit 393ed5d8 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'kbuild-fixes-v5.19-2' of...

Merge tag 'kbuild-fixes-v5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild

Pull Kbuild fixes from Masahiro Yamada:

 - Fix modpost to detect EXPORT_SYMBOL marked as __init or__exit

 - Update the supported arch list in the LLVM document

 - Avoid the second link of vmlinux for CONFIG_TRIM_UNUSED_KSYMS

 - Avoid false __KSYM___this_module define in include/generated/autoksyms.h

* tag 'kbuild-fixes-v5.19-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
  kbuild: Ignore __this_module in gen_autoksyms.sh
  kbuild: link vmlinux only once for CONFIG_TRIM_UNUSED_KSYMS (2nd attempt)
  Documentation/llvm: Update Supported Arch table
  modpost: fix section mismatch check for exported init/exit sections
parents 97d4d026 ff139766
...@@ -129,18 +129,24 @@ yet. Bug reports are always welcome at the issue tracker below! ...@@ -129,18 +129,24 @@ yet. Bug reports are always welcome at the issue tracker below!
* - arm64 * - arm64
- Supported - Supported
- ``LLVM=1`` - ``LLVM=1``
* - hexagon
- Maintained
- ``LLVM=1``
* - mips * - mips
- Maintained - Maintained
- ``CC=clang`` - ``LLVM=1``
* - powerpc * - powerpc
- Maintained - Maintained
- ``CC=clang`` - ``CC=clang``
* - riscv * - riscv
- Maintained - Maintained
- ``CC=clang`` - ``LLVM=1``
* - s390 * - s390
- Maintained - Maintained
- ``CC=clang`` - ``CC=clang``
* - um (User Mode)
- Maintained
- ``LLVM=1``
* - x86 * - x86
- Supported - Supported
- ``LLVM=1`` - ``LLVM=1``
......
...@@ -1141,7 +1141,7 @@ KBUILD_MODULES := 1 ...@@ -1141,7 +1141,7 @@ KBUILD_MODULES := 1
autoksyms_recursive: descend modules.order autoksyms_recursive: descend modules.order
$(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \ $(Q)$(CONFIG_SHELL) $(srctree)/scripts/adjust_autoksyms.sh \
"$(MAKE) -f $(srctree)/Makefile vmlinux" "$(MAKE) -f $(srctree)/Makefile autoksyms_recursive"
endif endif
autoksyms_h := $(if $(CONFIG_TRIM_UNUSED_KSYMS), include/generated/autoksyms.h) autoksyms_h := $(if $(CONFIG_TRIM_UNUSED_KSYMS), include/generated/autoksyms.h)
......
...@@ -56,4 +56,7 @@ EOT ...@@ -56,4 +56,7 @@ EOT
# point addresses. # point addresses.
sed -e 's/^\.//' | sed -e 's/^\.//' |
sort -u | sort -u |
# Ignore __this_module. It's not an exported symbol, and will be resolved
# when the final .ko's are linked.
grep -v '^__this_module$' |
sed -e 's/\(.*\)/#define __KSYM_\1 1/' >> "$output_file" sed -e 's/\(.*\)/#define __KSYM_\1 1/' >> "$output_file"
...@@ -980,7 +980,7 @@ static const struct sectioncheck sectioncheck[] = { ...@@ -980,7 +980,7 @@ static const struct sectioncheck sectioncheck[] = {
}, },
/* Do not export init/exit functions or data */ /* Do not export init/exit functions or data */
{ {
.fromsec = { "__ksymtab*", NULL }, .fromsec = { "___ksymtab*", NULL },
.bad_tosec = { INIT_SECTIONS, EXIT_SECTIONS, NULL }, .bad_tosec = { INIT_SECTIONS, EXIT_SECTIONS, NULL },
.mismatch = EXPORT_TO_INIT_EXIT, .mismatch = EXPORT_TO_INIT_EXIT,
.symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL }, .symbol_white_list = { DEFAULT_SYMBOL_WHITE_LIST, NULL },
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment