From 8dc0e020233f42230cd91f94111c8fd8ed70b629 Mon Sep 17 00:00:00 2001 From: John Baldwin Date: Fri, 6 Jan 2006 16:14:32 +0000 Subject: Be a little more forgiving of lame BIOS writers. If a link device that doesn't have any actual interrupts is listed in a _PRT entry, only print a warning rather than panic'ing when we walk the _PRT's to build up count of entries that reference a given link (the counts are used as weights so that we can attempt to balance the load across IRQs used by link devices). Instead, only panic if we attempt to use the _PRT entry to route an interrupt for a device. PR: i386/89545 Tested by: anders --- sys/dev/acpica/acpi_pci_link.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'sys/dev') diff --git a/sys/dev/acpica/acpi_pci_link.c b/sys/dev/acpica/acpi_pci_link.c index 517fd2647b7b..91a4f5fc2b13 100644 --- a/sys/dev/acpica/acpi_pci_link.c +++ b/sys/dev/acpica/acpi_pci_link.c @@ -627,8 +627,11 @@ acpi_pci_link_add_reference(device_t dev, int index, device_t pcib, int slot, /* Bump the reference count. */ ACPI_SERIAL_BEGIN(pci_link); link = acpi_pci_link_lookup(dev, index); - if (link == NULL) - panic("%s: apparently invalid index %d", __func__, index); + if (link == NULL) { + device_printf(dev, "apparently invalid index %d\n", index); + ACPI_SERIAL_END(pci_link); + return; + } link->l_references++; if (link->l_routed) pci_link_interrupt_weights[link->l_irq]++; -- cgit v1.3