> -----Original Message----- > From: Moore, Robert > Sent: Monday, April 17, 2017 12:28 PM > To: 'Guenter Roeck' <linux@xxxxxxxxxxxx>; Zheng, Lv <lv.zheng@xxxxxxxxx> > Cc: Wysocki, Rafael J <rafael.j.wysocki@xxxxxxxxx>; 'Len Brown' > <lenb@xxxxxxxxxx>; 'linux-acpi@xxxxxxxxxxxxxxx' <linux- > acpi@xxxxxxxxxxxxxxx>; 'devel@xxxxxxxxxx' <devel@xxxxxxxxxx>; 'linux- > kernel@xxxxxxxxxxxxxxx' <linux-kernel@xxxxxxxxxxxxxxx>; Box, David E > (david.e.box@xxxxxxxxx) <david.e.box@xxxxxxxxx> > Subject: RE: [PATCH] ACPICA: Export mutex functions > > > > -----Original Message----- > > From: Moore, Robert > > Sent: Monday, April 17, 2017 10:13 AM > > To: Guenter Roeck <linux@xxxxxxxxxxxx>; Zheng, Lv <lv.zheng@xxxxxxxxx> > > Cc: Wysocki, Rafael J <rafael.j.wysocki@xxxxxxxxx>; Len Brown > > <lenb@xxxxxxxxxx>; linux-acpi@xxxxxxxxxxxxxxx; devel@xxxxxxxxxx; > > linux- kernel@xxxxxxxxxxxxxxx > > Subject: RE: [PATCH] ACPICA: Export mutex functions > > > > There is a model for the drivers to directly acquire an AML mutex > > object. That is why the acquire/release public interfaces were added > > to ACPICA. > > > > I forget all of the details, but the model was developed with MS and > > others during the ACPI 6.0 timeframe. > > > > > [Moore, Robert] > > > Here is the case where the OS may need to directly acquire an AML mutex: > > From the ACPI spec: > > 19.6.2 Acquire (Acquire a Mutex) > > Note: For Mutex objects referenced by a _DLM object, the host OS may > also contend for ownership. > > Other than this case, the OS/drivers should never need to directly > acquire an AML mutex. > Bob [Moore, Robert] Here is more information, from the ACPICA reference: 8.3.15 AcpiAcquireMutex This function is intended to be used in conjunction with the _DLM (Device Lock Method) predefined name to directly acquire a mutex object that is defined in the ACPI namespace. The purpose of this is to provide a mutual exclusion mechanism between the AML interpreter and an ACPI-related device driver, in order to support multiple-operation transactions. >From the ACPI Specification: "The _DLM object appears in a device scope when AML access to the device must be synchronized with the OS environment. It is used in conjunction with a standard Mutex object. With _DLM, the standard Mutex provides synchronization within the AML environment as usual, but also synchronizes with the OS environment." The AML mutex node is pointed to by Parent:Pathname. Either the Parent or the Pathname can be NULL, but not both. If the operation fails an appropriate status will be returned. -- 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