From: Kenji Kaneshige This patch adds the error check of acpi_register_gsi() into acpi_pci_enable_irq(). Signed-off-by: Kenji Kaneshige Cc: Signed-off-by: Andrew Morton --- drivers/acpi/pci_irq.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletion(-) diff -puN drivers/acpi/pci_irq.c~acpi_register_gsi-change-acpi-pci-code drivers/acpi/pci_irq.c --- devel/drivers/acpi/pci_irq.c~acpi_register_gsi-change-acpi-pci-code 2005-07-28 11:42:11.000000000 -0700 +++ devel-akpm/drivers/acpi/pci_irq.c 2005-07-28 11:42:11.000000000 -0700 @@ -392,6 +392,7 @@ acpi_pci_irq_enable ( int edge_level = ACPI_LEVEL_SENSITIVE; int active_high_low = ACPI_ACTIVE_LOW; char *link = NULL; + int rc; ACPI_FUNCTION_TRACE("acpi_pci_irq_enable"); @@ -444,7 +445,13 @@ acpi_pci_irq_enable ( } } - dev->irq = acpi_register_gsi(irq, edge_level, active_high_low); + rc = acpi_register_gsi(irq, edge_level, active_high_low); + if (rc < 0) { + printk(KERN_WARNING PREFIX "PCI Interrupt %s[%c]: failed " + "to register GSI\n", pci_name(dev), ('A' + pin)); + return_VALUE(rc); + } + dev->irq = rc; printk(KERN_INFO PREFIX "PCI Interrupt %s[%c] -> ", pci_name(dev), 'A' + pin); _