Rajesh Shah <rajesh.shah@xxxxxxxxx> writes: > On Tue, Jun 20, 2006 at 04:28:24PM -0600, Eric W. Biederman wrote: >> The current implementation of create_irq() is a hack but it is the >> current hack that msi.c uses, and unfortunately the ``generic'' apic >> msi ops depend on this hack. Thus we are stuck this hack of assuming >> irq == vector until the depencencies in the generic msi code are removed. >> >> Signed-off-by: Eric W. Biederman <ebiederm@xxxxxxxxxxxx> >> --- >> arch/i386/kernel/io_apic.c | 48 ++++++++++++++++++++++++++++++++++++++++++++ >> 1 files changed, 48 insertions(+), 0 deletions(-) >> >> diff --git a/arch/i386/kernel/io_apic.c b/arch/i386/kernel/io_apic.c >> index 16966f4..04f78ff 100644 >> --- a/arch/i386/kernel/io_apic.c >> +++ b/arch/i386/kernel/io_apic.c >> @@ -2497,6 +2497,54 @@ static int __init ioapic_init_sysfs(void >> >> device_initcall(ioapic_init_sysfs); >> >> +#ifdef CONFIG_PCI_MSI >> +/* > > It would be really good to decouple MSI implementation from IO > APICs, since there's really no real hardware dependence here. > This code can actually go to arch/xxx/pci/msi-apic.c I agree in theory. In practice however msi interrupts look like io_apics. with a different register set and the use all of the same support facilities. So until that part of the architecture is refactored it doesn't make much sense. There is a slightly better case for moving the code into a separate file. Namely I think I know of a second common implementation for x86_64. At which point the files will probably be named msi-intel.c and msi-amd.c Or something like that. The name msi-apic.c is at least as bad as putting the code in io_apic.c Eric - To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html