* Re: [Devel] AcpiClearGpe() and recent changes
@ 2010-06-10 20:23 Jukka Ruohonen
0 siblings, 0 replies; 3+ messages in thread
From: Jukka Ruohonen @ 2010-06-10 20:23 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 717 bytes --]
On Thu, Jun 10, 2010 at 01:09:38PM -0700, Moore, Robert wrote:
> I'm not entirely sure at the moment, but we are about to make some
> additional GPE changes since some issues with the reference count
> mechanism have been uncovered.
>
> Do you have a need to call AcpiClearGpe from interrupt level?
No.
I was mainly after the inconsistency in the API. As AcpiClearGpe() uses
unconditionally the same lock that has been acquired earlier by one of the
dispatching functions, this leads to a panic or other comparable condition,
depending on the implementation.
So perhaps this could be solved at the documentation level by nothing that
AcpiClearGpe() may NOT be used from a GPE handler.
- Jukka.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Devel] AcpiClearGpe() and recent changes
@ 2010-06-10 20:09 Moore, Robert
0 siblings, 0 replies; 3+ messages in thread
From: Moore, Robert @ 2010-06-10 20:09 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 2213 bytes --]
I'm not entirely sure at the moment, but we are about to make some additional GPE changes since some issues with the reference count mechanism have been uncovered.
Do you have a need to call AcpiClearGpe from interrupt level?
>-----Original Message-----
>From: devel-bounces(a)acpica.org [mailto:devel-bounces(a)acpica.org] On Behalf
>Of Jukka Ruohonen
>Sent: Sunday, June 06, 2010 2:17 AM
>To: devel(a)acpica.org
>Subject: [Devel] AcpiClearGpe() and recent changes
>
>Hello.
>
>I have a question about this recent change:
>
> 31 March 2010. Summary of changes for version 20100331:
>
> 1) ACPI CA Core Subsystem:
>
> Completed a major update for the GPE support in order to improve
> support for shared GPEs and to simplify both host OS and ACPICA
> code. Added a reference count mechanism to support shared GPEs that
> require multiple device drivers. Several external interfaces have
> changed. One external interface has been removed. One new external
> interface was added. Most of the GPE external interfaces now use
>the
> GPE spinlock instead of the events mutex (and the Flags parameter
> for many GPE interfaces has been removed.) See the updated ACPICA
> Programmer Reference for details. Matthew Garrett, Bob Moore,
>Rafael
> Wysocki. ACPICA BZ 831.
>
>Now the AcpiClearGpe() function operates with a spin mutex on
>AcpiGbl_GpeLock.
>Previously it was possible to avoid getting a lock if the ACPI_NOT_ISR was
>not specified, and thus it was possible to also call AcpiClearGpe() from a
>GPE handler. If my reading is correct, this is no longer possible because
>the GPE dispatch functions obtain the same AcpiGbl_GpeLock already before
>calling the custom handler installed via AcpiInstallGpeHandler().
>
>The documentation however claims that "this function [AcpiClearGpe()] may
>be
>called from an interrupt service routine (typically a GPE handler) or a
>device driver".
>
>Am I missing or misinterpreting something?
>
>- Jukka.
>_______________________________________________
>Devel mailing list
>Devel(a)acpica.org
>http://lists.acpica.org/listinfo/devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* [Devel] AcpiClearGpe() and recent changes
@ 2010-06-06 9:17 Jukka Ruohonen
0 siblings, 0 replies; 3+ messages in thread
From: Jukka Ruohonen @ 2010-06-06 9:17 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 1556 bytes --]
Hello.
I have a question about this recent change:
31 March 2010. Summary of changes for version 20100331:
1) ACPI CA Core Subsystem:
Completed a major update for the GPE support in order to improve
support for shared GPEs and to simplify both host OS and ACPICA
code. Added a reference count mechanism to support shared GPEs that
require multiple device drivers. Several external interfaces have
changed. One external interface has been removed. One new external
interface was added. Most of the GPE external interfaces now use the
GPE spinlock instead of the events mutex (and the Flags parameter
for many GPE interfaces has been removed.) See the updated ACPICA
Programmer Reference for details. Matthew Garrett, Bob Moore, Rafael
Wysocki. ACPICA BZ 831.
Now the AcpiClearGpe() function operates with a spin mutex on AcpiGbl_GpeLock.
Previously it was possible to avoid getting a lock if the ACPI_NOT_ISR was
not specified, and thus it was possible to also call AcpiClearGpe() from a
GPE handler. If my reading is correct, this is no longer possible because
the GPE dispatch functions obtain the same AcpiGbl_GpeLock already before
calling the custom handler installed via AcpiInstallGpeHandler().
The documentation however claims that "this function [AcpiClearGpe()] may be
called from an interrupt service routine (typically a GPE handler) or a
device driver".
Am I missing or misinterpreting something?
- Jukka.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2010-06-10 20:23 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-06-10 20:23 [Devel] AcpiClearGpe() and recent changes Jukka Ruohonen
-- strict thread matches above, loose matches on Subject: below --
2010-06-10 20:09 Moore, Robert
2010-06-06 9:17 Jukka Ruohonen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.