On Thu, 2008-02-14 at 15:49 +0100, Thomas Renninger wrote: > On Thu, 2008-02-14 at 13:40 +0100, Holger Macht wrote: > > When trying to get the acpi_handle from an acpi_buffer, pass > > ACPI_ROOT_OBJECT instead of NULL to acpi_get_handle(). This fixes the > > detection of dock dependent bays. > > > > > > Signed-off-by: Holger Macht <hmacht@xxxxxxx> > > --- > > > > diff --git a/drivers/acpi/scan.c b/drivers/acpi/scan.c > > index 3fac011..d9b9143 100644 > > --- a/drivers/acpi/scan.c > > +++ b/drivers/acpi/scan.c > > @@ -609,7 +609,8 @@ acpi_bus_get_ejd(acpi_handle handle, acpi_handle *ejd) > > status = acpi_evaluate_object(handle, "_EJD", NULL, &buffer); > > if (ACPI_SUCCESS(status)) { > > obj = buffer.pointer; > > - status = acpi_get_handle(NULL, obj->string.pointer, ejd); > > + status = acpi_get_handle(ACPI_ROOT_OBJECT, obj->string.pointer, > > + ejd); > > kfree(buffer.pointer); > > } > > return status; > > > > I can verify that acpi_bus_get_ejd is totally useless without that > patch. I mean I have verified and can confirm that.. > If "status = acpi_evaluate_object(handle, "_EJD", NULL, &buffer);" > succeeds (and AE_NOT_FOUND is not returned), the function will return > AE_BAD_PARAMETER, because NULL never makes sense as first argument of > acpi_get_handle: > status = acpi_get_handle(NULL, obj->string.pointer, ejd); > > I can also verify that the correct handle is evaluated with this patch > on a recent ThinkPad, otherwise not. Same here. > Please add it, looks like a typo. Thomas - 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