From e3393768f65c87ad6fc3733978e66380ed0fb0c1 Mon Sep 17 00:00:00 2001 From: Sam Ravnborg Date: Sun, 29 Apr 2007 20:53:01 +0200 Subject: [PATCH] --- yaml --- r: 54145 b: refs/heads/master c: b4d5171ac7d9806b1ea61903ff954cd9620135bf h: refs/heads/master i: 54143: fd8ba0b52831a04a38d65d2cdeeca945673aedd4 v: v3 --- [refs] | 2 +- trunk/scripts/mod/modpost.c | 13 +++++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 662dbd5c23cf..d7e90eddc0de 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 66bd32e443203735b00f22bede637ec98f3070ca +refs/heads/master: b4d5171ac7d9806b1ea61903ff954cd9620135bf diff --git a/trunk/scripts/mod/modpost.c b/trunk/scripts/mod/modpost.c index b81157cf4527..628f393ecaa6 100644 --- a/trunk/scripts/mod/modpost.c +++ b/trunk/scripts/mod/modpost.c @@ -635,6 +635,13 @@ static int strrcmp(const char *s, const char *sub) * tosec = .init.data * fromsec = .text* * refsymname = logo_ + * + * Pattern 8: + * Symbols contained in .paravirtprobe may safely reference .init.text. + * The pattern is: + * tosec = .init.text + * fromsec = .paravirtprobe + * **/ static int secref_whitelist(const char *modname, const char *tosec, const char *fromsec, const char *atsym, @@ -712,6 +719,12 @@ static int secref_whitelist(const char *modname, const char *tosec, (strncmp(fromsec, ".text", strlen(".text")) == 0) && (strncmp(refsymname, "logo_", strlen("logo_")) == 0)) return 1; + + /* Check for pattern 8 */ + if ((strcmp(tosec, ".init.text") == 0) && + (strcmp(fromsec, ".paravirtprobe") == 0)) + return 1; + return 0; }