Now CONFIG_TRIM_UNUSED_KSYMS is revived, but Linus is still unhappy about the build speed. I re-implemented this feature, and the build time cost is now almost unnoticeable level. I hope this makes Linus happy. Masahiro Yamada (4): kbuild: fix UNUSED_KSYMS_WHITELIST for Clang LTO export.h: make __ksymtab_strings per-symbol section kbuild: separate out vmlinux.lds generation kbuild: re-implement CONFIG_TRIM_UNUSED_KSYMS to make it work in one-pass Makefile | 34 ++++++------ arch/alpha/kernel/Makefile | 3 +- arch/arc/kernel/Makefile | 3 +- arch/arm/kernel/Makefile | 3 +- arch/arm64/kernel/Makefile | 3 +- arch/csky/kernel/Makefile | 3 +- arch/h8300/kernel/Makefile | 2 +- arch/hexagon/kernel/Makefile | 3 +- arch/ia64/kernel/Makefile | 3 +- arch/m68k/kernel/Makefile | 2 +- arch/microblaze/kernel/Makefile | 3 +- arch/mips/kernel/Makefile | 3 +- arch/nds32/kernel/Makefile | 3 +- arch/nios2/kernel/Makefile | 2 +- arch/openrisc/kernel/Makefile | 3 +- arch/parisc/kernel/Makefile | 3 +- arch/powerpc/kernel/Makefile | 2 +- arch/riscv/kernel/Makefile | 2 +- arch/s390/kernel/Makefile | 3 +- arch/sh/kernel/Makefile | 3 +- arch/sparc/kernel/Makefile | 2 +- arch/um/kernel/Makefile | 2 +- arch/x86/kernel/Makefile | 2 +- arch/xtensa/kernel/Makefile | 3 +- include/asm-generic/export.h | 25 +-------- include/asm-generic/vmlinux.lds.h | 29 +++++++++-- include/linux/export.h | 56 +++++--------------- init/Kconfig | 4 +- scripts/Makefile.build | 7 +-- scripts/adjust_autoksyms.sh | 76 --------------------------- scripts/gen-keep-ksyms.sh | 86 +++++++++++++++++++++++++++++++ scripts/gen_autoksyms.sh | 55 -------------------- scripts/gen_ksymdeps.sh | 25 --------- scripts/lto-used-symbollist.txt | 5 -- scripts/module.lds.S | 38 ++++++++++---- 35 files changed, 210 insertions(+), 291 deletions(-) delete mode 100755 scripts/adjust_autoksyms.sh create mode 100755 scripts/gen-keep-ksyms.sh delete mode 100755 scripts/gen_autoksyms.sh delete mode 100755 scripts/gen_ksymdeps.sh delete mode 100644 scripts/lto-used-symbollist.txt -- 2.27.0