diff options
author | Ingo Molnar <mingo@elte.hu> | 2008-09-14 17:26:53 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-09-14 17:26:53 +0200 |
commit | f81b691a3df09806385ea413c3a2ee094c705ca3 (patch) | |
tree | 01c0d6d319fcbddc98171d06cfe8e742cd270455 /scripts/mod/file2alias.c | |
parent | 110e0358e7dfd9cc56d47077068f3680dae10b56 (diff) | |
parent | adee14b2e1557d0a8559f29681732d05a89dfc35 (diff) | |
download | kernel-crypto-f81b691a3df09806385ea413c3a2ee094c705ca3.tar.gz kernel-crypto-f81b691a3df09806385ea413c3a2ee094c705ca3.tar.xz kernel-crypto-f81b691a3df09806385ea413c3a2ee094c705ca3.zip |
Merge commit 'v2.6.27-rc6' into x86/pat
Diffstat (limited to 'scripts/mod/file2alias.c')
-rw-r--r-- | scripts/mod/file2alias.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/scripts/mod/file2alias.c b/scripts/mod/file2alias.c index 4fa1f3ad251..4c9890ec252 100644 --- a/scripts/mod/file2alias.c +++ b/scripts/mod/file2alias.c @@ -344,14 +344,20 @@ static void do_pnp_device_entry(void *symval, unsigned long size, struct module *mod) { const unsigned long id_size = sizeof(struct pnp_device_id); - const struct pnp_device_id *id = symval; + const unsigned int count = (size / id_size)-1; + const struct pnp_device_id *devs = symval; + unsigned int i; device_id_check(mod->name, "pnp", size, id_size, symval); - buf_printf(&mod->dev_table_buf, - "MODULE_ALIAS(\"pnp:d%s*\");\n", id->id); - buf_printf(&mod->dev_table_buf, - "MODULE_ALIAS(\"acpi*:%s:*\");\n", id->id); + for (i = 0; i < count; i++) { + const char *id = (char *)devs[i].id; + + buf_printf(&mod->dev_table_buf, + "MODULE_ALIAS(\"pnp:d%s*\");\n", id); + buf_printf(&mod->dev_table_buf, + "MODULE_ALIAS(\"acpi*:%s:*\");\n", id); + } } /* looks like: "pnp:dD" for every device of the card */ |