diff options
author | Masahiro Yamada <masahiroy@kernel.org> | 2024-07-07 01:05:06 +0900 |
---|---|---|
committer | Andrew Morton <akpm@linux-foundation.org> | 2024-07-12 16:39:52 -0700 |
commit | 73db3abdca58c8a014ec4c88cf5ef925cbf63669 (patch) | |
tree | 3d3c2cee2d51dd9457804aeb322918211b861939 /include/linux/init.h | |
parent | 7a7127aa33c9f5b7b54ffa80619f644c5e000846 (diff) | |
download | lwn-73db3abdca58c8a014ec4c88cf5ef925cbf63669.tar.gz lwn-73db3abdca58c8a014ec4c88cf5ef925cbf63669.zip |
init/modpost: conditionally check section mismatch to __meminit*
This reverts commit eb8f689046b8 ("Use separate sections for __dev/
_cpu/__mem code/data").
Check section mismatch to __meminit* only when CONFIG_MEMORY_HOTPLUG=n.
With this change, the linker script and modpost become simpler, and we
can get rid of the __ref annotations from the memory hotplug code.
[sfr@canb.auug.org.au: remove MEM_KEEP from arch/powerpc/kernel/vmlinux.lds.S]
Link: https://lkml.kernel.org/r/20240710093213.2aefb25f@canb.auug.org.au
Link: https://lkml.kernel.org/r/20240706160511.2331061-2-masahiroy@kernel.org
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Reviewed-by: Wei Yang <richard.weiyang@gmail.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Diffstat (limited to 'include/linux/init.h')
-rw-r--r-- | include/linux/init.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/include/linux/init.h b/include/linux/init.h index b2e9dfff8691..ee1309473bc6 100644 --- a/include/linux/init.h +++ b/include/linux/init.h @@ -84,11 +84,15 @@ #define __exit __section(".exit.text") __exitused __cold notrace -/* Used for MEMORY_HOTPLUG */ -#define __meminit __section(".meminit.text") __cold notrace \ - __latent_entropy -#define __meminitdata __section(".meminit.data") -#define __meminitconst __section(".meminit.rodata") +#ifdef CONFIG_MEMORY_HOTPLUG +#define __meminit +#define __meminitdata +#define __meminitconst +#else +#define __meminit __init +#define __meminitdata __initdata +#define __meminitconst __initconst +#endif /* For assembly routines */ #define __HEAD .section ".head.text","ax" |