which we want to skip during modpost processing. We need this to make some of the whitelisting work.
Signed-off-by: Stephen Rothwell <[EMAIL PROTECTED]> --- scripts/mod/modpost.c | 18 +++++++++++++++++- 1 files changed, 17 insertions(+), 1 deletions(-) -- Cheers, Stephen Rothwell [EMAIL PROTECTED] diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c index 113dc77..748b058 100644 --- a/scripts/mod/modpost.c +++ b/scripts/mod/modpost.c @@ -164,7 +164,13 @@ static inline unsigned int tdb_hash(const char *name) static struct symbol *alloc_symbol(const char *name, unsigned int weak, struct symbol *next) { - struct symbol *s = NOFAIL(malloc(sizeof(*s) + strlen(name) + 1)); + struct symbol *s; + + /* For our purposes, .foo matches foo. PPC64 needs this. */ + if (name[0] == '.') + name++; + + s = NOFAIL(malloc(sizeof(*s) + strlen(name) + 1)); memset(s, 0, sizeof(*s)); strcpy(s->name, name); @@ -180,6 +186,10 @@ static struct symbol *new_symbol(const char *name, struct module *module, unsigned int hash; struct symbol *new; + /* For our purposes, .foo matches foo. PPC64 needs this. */ + if (name[0] == '.') + name++; + hash = tdb_hash(name) % SYMBOL_HASH_SIZE; new = symbolhash[hash] = alloc_symbol(name, 0, symbolhash[hash]); new->module = module; @@ -684,6 +694,12 @@ static int secref_whitelist(const char *modname, const char *tosec, NULL }; + /* For our purposes, .foo matches foo. PPC64 needs this. */ + if (atsym[0] == '.') + atsym++; + if (refsymname[0] == '.') + refsymname++; + /* Check for pattern 1 */ if (strcmp(tosec, ".init.data") != 0) f1 = 0; -- 1.5.1.4 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/