public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
* ACPI notify handler and reentrancy of WMI device.
@ 2011-01-16 18:18 Corentin Chary
       [not found] ` <AANLkTim0auvcUeDSO7QGSVbj0A+g88FSon7-qT6KzBHd@mail.gmail.com>
  0 siblings, 1 reply; 9+ messages in thread
From: Corentin Chary @ 2011-01-16 18:18 UTC (permalink / raw)
  To: linux acpi; +Cc: platform-driver-x86, Len Brown, Matthew Garrett

Hi,
I currently trying to fix a bug on the Eeepc 1000H with eeepc-wmi.

I got an acpi notify handler. The notify is triggered when I call WMBC().
In this notify handler, I must re-call WMBC (with some other arguments, it won't
notify again this time).

If I do that, I'll get:
[  176.920391] ACPI Error (dswload-0802): [_T_0] Namespace lookup
failure, AE_ALREADY_EXISTS
[  176.920416] ACPI Exception: AE_ALREADY_EXISTS, During name
lookup/catalog (20100428/psloop-231)
[  176.920439] ACPI Error (psparse-0537): Method parse/execution
failed [\AMW0.WMBC] (Node f7023b88), AE_ALREADY_EXISTS
[  176.920469] ACPI: Marking method WMBC as Serialized because of
AE_ALREADY_EXISTS error

Then it'll work.

What's the best way to avoid that ?
- Is there some way to tell acpica that this method should be serialized ?
- Is there some way to finish the execution of the first WMBC call in
the notify handler ?
- Should I use a work queue, and do what I have to do later (when the
previous call is finished) ?
- anything else ?

Thanks,

-- 
Corentin Chary
http://xf.iksaif.net

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2011-01-21 19:55 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-01-16 18:18 ACPI notify handler and reentrancy of WMI device Corentin Chary
     [not found] ` <AANLkTim0auvcUeDSO7QGSVbj0A+g88FSon7-qT6KzBHd@mail.gmail.com>
2011-01-17  2:05   ` Lin Ming
2011-01-17  6:51     ` Corentin Chary
2011-01-17  6:52       ` Corentin Chary
2011-01-19  8:15       ` Corentin Chary
2011-01-20  9:55       ` Lin Ming
2011-01-20 10:00         ` Corentin Chary
2011-01-21 19:55           ` Corentin Chary
2011-01-20 10:10         ` Corentin Chary

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox