The acpi_get_pci_rootbridge_handle() walk through the acpi ns to find
the handle matches the seg, bus and the PCI_ROOT_HID_STRING. It should
returns the handle as soon as if find the match. But the current codes
always parse through the whole namespace because the user_function
find_pci_rootbridge() returns status=AE_OK when it finds the match.
This patch, on top of 2.6.19-rc1, is to make the find_pci_rootbridge()
returning AE_CTRL_TERMINATE when it finds the match.
Signed-off-by: Justin Chen <[EMAIL PROTECTED]>
------------------------------------------------------------------------
-------------------------------------------
--- 2.6.19-rc1/drivers/acpi/glue.c.orig 2006-10-10 16:02:40.000000000
-0700
+++ 2.6.19-rc1/drivers/acpi/glue.c 2006-10-10 16:05:11.000000000
-0700
@@ -189,8 +189,12 @@ find_pci_rootbridge(acpi_handle handle,
bus = tmp;
if (seg == find->seg && bus == find->bus)
+ {
find->handle = handle;
- status = AE_OK;
+ status = AE_CTRL_TERMINATE;
+ }
+ else
+ status = AE_OK;
exit:
kfree(buffer.pointer);
return status;
-
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html