@@ -823,9 +823,7 @@ static void check_section(const char *modname, struct elf_info *elf,
823
823
TEXT_SECTIONS, OTHER_TEXT_SECTIONS
824
824
825
825
enum mismatch {
826
- TEXT_TO_ANY_INIT ,
827
- DATA_TO_ANY_INIT ,
828
- TEXTDATA_TO_ANY_EXIT ,
826
+ TEXTDATA_TO_ANY_INIT_EXIT ,
829
827
XXXINIT_TO_SOME_INIT ,
830
828
ANY_INIT_TO_ANY_EXIT ,
831
829
ANY_EXIT_TO_ANY_INIT ,
@@ -856,20 +854,10 @@ static const struct sectioncheck sectioncheck[] = {
856
854
/* Do not reference init/exit code/data from
857
855
* normal code and data
858
856
*/
859
- {
860
- .fromsec = { TEXT_SECTIONS , NULL },
861
- .bad_tosec = { ALL_INIT_SECTIONS , NULL },
862
- .mismatch = TEXT_TO_ANY_INIT ,
863
- },
864
- {
865
- .fromsec = { DATA_SECTIONS , NULL },
866
- .bad_tosec = { ALL_INIT_SECTIONS , NULL },
867
- .mismatch = DATA_TO_ANY_INIT ,
868
- },
869
857
{
870
858
.fromsec = { TEXT_SECTIONS , DATA_SECTIONS , NULL },
871
- .bad_tosec = { ALL_EXIT_SECTIONS , NULL },
872
- .mismatch = TEXTDATA_TO_ANY_EXIT ,
859
+ .bad_tosec = { ALL_INIT_SECTIONS , ALL_EXIT_SECTIONS , NULL },
860
+ .mismatch = TEXTDATA_TO_ANY_INIT_EXIT ,
873
861
},
874
862
/* Do not reference init code/data from meminit code/data */
875
863
{
0 commit comments