summaryrefslogtreecommitdiffstats
path: root/scripts/mod
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2023-10-23 02:06:10 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2023-10-28 21:31:22 +0900
commita3df1526da480c089c20868b7f4d486b9f266001 (patch)
tree4721961952727eefdcf162fe46303a4e4353af9c /scripts/mod
parent48cd8df7afd1eef22cf7b125697a6d7c3d168c5c (diff)
downloadlinux-a3df1526da480c089c20868b7f4d486b9f266001.tar.gz
linux-a3df1526da480c089c20868b7f4d486b9f266001.tar.bz2
linux-a3df1526da480c089c20868b7f4d486b9f266001.zip
modpost: disallow the combination of EXPORT_SYMBOL and __meminit*
Theoretically, we could export conditionally-discarded code sections, such as .meminit*, if all the users can become modular under a certain condition. However, that would be difficult to control and such a tricky case has never occurred. Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts/mod')
-rw-r--r--scripts/mod/modpost.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index 160336efedba..f76ae0909ccd 100644
--- a/scripts/mod/modpost.c
+++ b/scripts/mod/modpost.c
@@ -1164,7 +1164,7 @@ static void check_export_symbol(struct module *mod, struct elf_info *elf,
ELF_ST_TYPE(sym->st_info) == STT_LOPROC)
s->is_func = true;
- if (match(secname, PATTERNS(INIT_SECTIONS)))
+ if (match(secname, PATTERNS(ALL_INIT_SECTIONS)))
warn("%s: %s: EXPORT_SYMBOL used for init symbol. Remove __init or EXPORT_SYMBOL.\n",
mod->name, name);
else if (match(secname, PATTERNS(ALL_EXIT_SECTIONS)))