summaryrefslogtreecommitdiff
path: root/scripts/mod
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/mod')
-rw-r--r--scripts/mod/modpost.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c
index 5b076ef5199..7f25354deba 100644
--- a/scripts/mod/modpost.c
+++ b/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;
}