modpost: merge sectioncheck table entries regarding init/exit sections

Check symbol references from normal sections to init/exit sections in
a single entry.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
This commit is contained in:
Masahiro Yamada 2023-10-23 02:06:12 +09:00
parent e578e4e311
commit b3d4f446fc
1 changed files with 3 additions and 15 deletions

View File

@ -823,9 +823,7 @@ static void check_section(const char *modname, struct elf_info *elf,
TEXT_SECTIONS, OTHER_TEXT_SECTIONS
enum mismatch {
TEXT_TO_ANY_INIT,
DATA_TO_ANY_INIT,
TEXTDATA_TO_ANY_EXIT,
TEXTDATA_TO_ANY_INIT_EXIT,
XXXINIT_TO_SOME_INIT,
ANY_INIT_TO_ANY_EXIT,
ANY_EXIT_TO_ANY_INIT,
@ -856,20 +854,10 @@ static const struct sectioncheck sectioncheck[] = {
/* Do not reference init/exit code/data from
* normal code and data
*/
{
.fromsec = { TEXT_SECTIONS, NULL },
.bad_tosec = { ALL_INIT_SECTIONS, NULL },
.mismatch = TEXT_TO_ANY_INIT,
},
{
.fromsec = { DATA_SECTIONS, NULL },
.bad_tosec = { ALL_INIT_SECTIONS, NULL },
.mismatch = DATA_TO_ANY_INIT,
},
{
.fromsec = { TEXT_SECTIONS, DATA_SECTIONS, NULL },
.bad_tosec = { ALL_EXIT_SECTIONS, NULL },
.mismatch = TEXTDATA_TO_ANY_EXIT,
.bad_tosec = { ALL_INIT_SECTIONS, ALL_EXIT_SECTIONS, NULL },
.mismatch = TEXTDATA_TO_ANY_INIT_EXIT,
},
/* Do not reference init code/data from meminit code/data */
{