Commit b3c0a4da authored by Wolfram Sang's avatar Wolfram Sang Committed by Michael Ellerman

of: fix autoloading due to broken modalias with no 'compatible'

Because of an improper dereference, a stray 'C' character was output to
the modalias when no 'compatible' was specified. This is the case for
some old PowerMac drivers which only set the 'name' property. Fix it to
let them match again.
Reported-by: default avatarMathieu Malaterre <malat@debian.org>
Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
Tested-by: default avatarMathieu Malaterre <malat@debian.org>
Cc: Philipp Zabel <p.zabel@pengutronix.de>
Cc: Andreas Schwab <schwab@linux-m68k.org>
Fixes: 6543becf ("mod/file2alias: make modalias generation safe for cross compiling")
Cc: stable@vger.kernel.org # v3.9+
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
parent 2c2a63e3
...@@ -384,7 +384,7 @@ static void do_of_entry_multi(void *symval, struct module *mod) ...@@ -384,7 +384,7 @@ static void do_of_entry_multi(void *symval, struct module *mod)
len = sprintf(alias, "of:N%sT%s", (*name)[0] ? *name : "*", len = sprintf(alias, "of:N%sT%s", (*name)[0] ? *name : "*",
(*type)[0] ? *type : "*"); (*type)[0] ? *type : "*");
if (compatible[0]) if ((*compatible)[0])
sprintf(&alias[len], "%sC%s", (*type)[0] ? "*" : "", sprintf(&alias[len], "%sC%s", (*type)[0] ? "*" : "",
*compatible); *compatible);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment