diff --git a/[refs] b/[refs] index ab2fbfacc112..d3f9ad38dfcc 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fededcd2af6219de69b252b7d3ea4b4ec2f33c7a +refs/heads/master: 6e10133fa4b2366e8ef18bc2ce34afe727b1c4ba diff --git a/trunk/scripts/mod/modpost.c b/trunk/scripts/mod/modpost.c index 5b076ef51996..7f25354deba2 100644 --- a/trunk/scripts/mod/modpost.c +++ b/trunk/scripts/mod/modpost.c @@ -671,13 +671,21 @@ static int init_section_ref_ok(const char *name) ".debug", NULL }; - + /* part of section name */ + const char *namelist3 [] = { + ".unwind", /* sample: IA_64.unwind.init.text */ + NULL + }; + for (s = namelist1; *s; s++) if (strcmp(*s, name) == 0) return 1; for (s = namelist2; *s; s++) if (strncmp(*s, name, strlen(*s)) == 0) return 1; + for (s = namelist3; *s; s++) + if (strstr(*s, name) != NULL) + return 1; return 0; } @@ -727,6 +735,11 @@ static int exit_section_ref_ok(const char *name) ".debug", NULL }; + /* part of section name */ + const char *namelist3 [] = { + ".unwind", /* Sample: IA_64.unwind.exit.text */ + NULL + }; for (s = namelist1; *s; s++) if (strcmp(*s, name) == 0) @@ -734,6 +747,9 @@ static int exit_section_ref_ok(const char *name) for (s = namelist2; *s; s++) if (strncmp(*s, name, strlen(*s)) == 0) return 1; + for (s = namelist3; *s; s++) + if (strstr(*s, name) != NULL) + return 1; return 0; }