Commit b3d4f446 authored by Masahiro Yamada's avatar Masahiro Yamada
Browse files

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: default avatarMasahiro Yamada <masahiroy@kernel.org>
parent e578e4e3
Loading
Loading
Loading
Loading
+3 −15
Original line number Diff line number Diff line
@@ -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 */
{