diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-08-25 10:54:07 +0200 | 
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-08-25 10:54:07 +0200 | 
| commit | e4f807c2b4d81636fc63993368646c5bfd42b22f (patch) | |
| tree | 2ff100911b1ba4e26e3d9aad41edb9b48405f01e /scripts/mod/file2alias.c | |
| parent | 25258ef762bc4a05fa9c4523f7dae56e3fd01864 (diff) | |
| parent | 83097aca8567a0bd593534853b71fe0fa9a75d69 (diff) | |
Merge branch 'linus' into x86/xen
Conflicts:
	arch/x86/kernel/paravirt.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
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 */  | 
