The patch titled Subject: ARM: mark setup_machine_tags() stub as __init __noreturn has been added to the -mm tree. Its filename is arm-mark-setup_machine_tags-stub-as-__init-__noreturn.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/arm-mark-setup_machine_tags-stub-as-__init-__noreturn.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/arm-mark-setup_machine_tags-stub-as-__init-__noreturn.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> Subject: ARM: mark setup_machine_tags() stub as __init __noreturn This prepares to move CONFIG_OPTIMIZE_INLINING from x86 to a common place. We need to eliminate potential issues beforehand. If it is enabled for arm, Clang build results in the following modpost warning: WARNING: vmlinux.o(.text+0x1124): Section mismatch in reference from the function setup_machine_tags() to the function .init.text:early_print() The function setup_machine_tags() references the function __init early_print(). This is often because setup_machine_tags lacks a __init annotation or the annotation of early_print is wrong. Link: http://lkml.kernel.org/r/20190423034959.13525-8-yamada.masahiro@xxxxxxxxxxxxx Signed-off-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- arch/arm/kernel/atags.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/arch/arm/kernel/atags.h~arm-mark-setup_machine_tags-stub-as-__init-__noreturn +++ a/arch/arm/kernel/atags.h @@ -5,7 +5,7 @@ void convert_to_tag_list(struct tag *tag const struct machine_desc *setup_machine_tags(phys_addr_t __atags_pointer, unsigned int machine_nr); #else -static inline const struct machine_desc * +static inline const struct machine_desc * __init __noreturn setup_machine_tags(phys_addr_t __atags_pointer, unsigned int machine_nr) { early_print("no ATAGS support: can't continue\n"); _ Patches currently in -mm which might be from yamada.masahiro@xxxxxxxxxxxxx are remove-spdx-with-linux-syscall-note-from-kernel-space-headers.patch arm64-mark-__cpus_have_const_cap-as-__always_inline.patch mips-mark-mult_sh_align_mod-as-__always_inline.patch s390-cpacf-mark-scpacf_query-as-__always_inline.patch mtd-rawnand-vf610_nfc-add-initializer-to-avoid-wmaybe-uninitialized.patch mips-mark-__fls-and-__ffs-as-__always_inline.patch arm-mark-setup_machine_tags-stub-as-__init-__noreturn.patch powerpc-prom_init-mark-prom_getprop-and-prom_getproplen-as-__init.patch powerpc-mm-radix-mark-__radix__flush_tlb_range_psize-as-__always_inline.patch powerpc-mm-radix-mark-as-__tlbie_pid-and-friends-as__always_inline.patch compiler-allow-all-arches-to-enable-config_optimize_inlining.patch treewide-replace-include-asm-sizesh-with-include-linux-sizesh.patch arch-remove-asm-sizesh-amd-asm-generic-sizesh.patch