Message ID | 20220505072244.1155033-1-masahiroy@kernel.org (mailing list archive) |
---|---|
Headers | show |
Series | kbuild: yet another series of cleanups (modpost, LTO, MODULE_REL_CRCS) | expand |
On Thu, May 5, 2022 at 4:24 PM Masahiro Yamada <masahiroy@kernel.org> wrote: > > > This is the third batch of cleanups in this development cycle. This series is available at: git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git lto-cleanup-v3
Hi Masahiro, On Thu, May 05, 2022 at 04:22:29PM +0900, Masahiro Yamada wrote: > > This is the third batch of cleanups in this development cycle. > > Major changes in v3: > > - Generate symbol CRCs as C code, and remove CONFIG_MODULE_REL_CRCS. > > Major changes in v2: > > - V1 did not work with CONFIG_MODULE_REL_CRCS. > I fixed this for v2. > > - Reflect some review comments in v1 > > - Refactor the code more > > - Avoid too long argument error > > > Masahiro Yamada (15): > modpost: mitigate false-negatives for static EXPORT_SYMBOL checks > modpost: change the license of EXPORT_SYMBOL to bool type > modpost: merge add_{intree_flag,retpoline,staging_flag} to add_header > modpost: move *.mod.c generation to write_mod_c_files() > kbuild: generate a list of objects in vmlinux > kbuild: record symbol versions in *.cmd files > modpost: extract symbol versions from *.cmd files > kbuild: link symbol CRCs at final link, removing > CONFIG_MODULE_REL_CRCS > kbuild: stop merging *.symversions > genksyms: adjust the output format to modpost > kbuild: do not create *.prelink.o for Clang LTO or IBT > modpost: simplify the ->is_static initialization > modpost: use hlist for hash table implementation > kbuild: make built-in.a rule robust against too long argument error > kbuild: make *.mod rule robust against too long argument error I merged this series into mainline and tested an Arch Linux x86_64 configuration and Fedora aarch64 configuration with ThinLTO and saw no new warnings or issues. Modules loaded just fine in QEMU for Arch Linux and I did not notice any boot issues or warnings. Tested-by: Nathan Chancellor <nathan@kernel.org> Cheers, Nathan
On Thu, May 5, 2022 at 4:24 PM Masahiro Yamada <masahiroy@kernel.org> wrote: > > > This is the third batch of cleanups in this development cycle. > > Major changes in v3: > > - Generate symbol CRCs as C code, and remove CONFIG_MODULE_REL_CRCS. > > Major changes in v2: > > - V1 did not work with CONFIG_MODULE_REL_CRCS. > I fixed this for v2. > > - Reflect some review comments in v1 > > - Refactor the code more > > - Avoid too long argument error > > > Masahiro Yamada (15): > modpost: mitigate false-negatives for static EXPORT_SYMBOL checks > modpost: change the license of EXPORT_SYMBOL to bool type > modpost: merge add_{intree_flag,retpoline,staging_flag} to add_header > modpost: move *.mod.c generation to write_mod_c_files() > kbuild: generate a list of objects in vmlinux > kbuild: record symbol versions in *.cmd files > modpost: extract symbol versions from *.cmd files > kbuild: link symbol CRCs at final link, removing > CONFIG_MODULE_REL_CRCS > kbuild: stop merging *.symversions > genksyms: adjust the output format to modpost > kbuild: do not create *.prelink.o for Clang LTO or IBT > modpost: simplify the ->is_static initialization > modpost: use hlist for hash table implementation > kbuild: make built-in.a rule robust against too long argument error > kbuild: make *.mod rule robust against too long argument error Only 03-06 were applied. I will send v4 for the rest. (I rewrote the static EXPORT checks). > > arch/powerpc/Kconfig | 1 - > arch/s390/Kconfig | 1 - > arch/um/Kconfig | 1 - > include/asm-generic/export.h | 22 +- > include/linux/export.h | 30 +-- > include/linux/symversion.h | 13 + > init/Kconfig | 4 - > kernel/module.c | 10 +- > scripts/Kbuild.include | 4 + > scripts/Makefile.build | 118 +++------ > scripts/Makefile.lib | 7 - > scripts/Makefile.modfinal | 5 +- > scripts/Makefile.modpost | 9 +- > scripts/genksyms/genksyms.c | 18 +- > scripts/link-vmlinux.sh | 46 ++-- > scripts/mod/file2alias.c | 2 - > scripts/mod/list.h | 52 ++++ > scripts/mod/modpost.c | 449 ++++++++++++++++++++--------------- > scripts/mod/modpost.h | 2 + > 19 files changed, 402 insertions(+), 392 deletions(-) > create mode 100644 include/linux/symversion.h > > -- > 2.32.0 > > -- > You received this message because you are subscribed to the Google Groups "Clang Built Linux" group. > To unsubscribe from this group and stop receiving emails from it, send an email to clang-built-linux+unsubscribe@googlegroups.com. > To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20220505072244.1155033-1-masahiroy%40kernel.org.