diff -urN linux-2.6.17-mm1-orig/drivers/acpi/motherboard.c linux-2.6.17-mm1/drivers/acpi/motherboard.c --- linux-2.6.17-mm1-orig/drivers/acpi/motherboard.c 2006-06-23 16:12:01.000000000 -0400 +++ linux-2.6.17-mm1/drivers/acpi/motherboard.c 2006-06-23 18:22:25.000000000 -0400 @@ -88,6 +88,7 @@ } } else { /* Memory mapped IO? */ + return -EINVAL; } if (requested_res) @@ -97,12 +98,14 @@ static int acpi_motherboard_add(struct acpi_device *device) { + acpi_status status; if (!device) return -EINVAL; - acpi_walk_resources(device->handle, METHOD_NAME__CRS, + + status = acpi_walk_resources(device->handle, METHOD_NAME__CRS, acpi_reserve_io_ranges, NULL); - return 0; + return status; } static struct acpi_driver acpi_motherboard_driver1 = {