* RE: [ACPI] ACPI and PRREMPT bug
@ 2005-11-07 20:44 Moore, Robert
2005-11-07 23:15 ` Chris Wright
0 siblings, 1 reply; 5+ messages in thread
From: Moore, Robert @ 2005-11-07 20:44 UTC (permalink / raw)
To: Moore, Robert, tzachar, linux-kernel, acpi-devel
You might try setting this flag (in acglobal.h) to TRUE:
/*
* Automatically serialize ALL control methods? Default is FALSE,
meaning
* to use the Serialized/NotSerialized method flags on a per method
basis.
* Only change this if the ASL code is poorly written and cannot handle
* reentrancy even though methods are marked "NotSerialized".
*/
ACPI_EXTERN UINT8 ACPI_INIT_GLOBAL (AcpiGbl_AllMethodsSerialized,
FALSE);
> -----Original Message-----
> From: Moore, Robert
> Sent: Monday, November 07, 2005 12:42 PM
> To: 'tzachar@cs.bgu.ac.il'; linux-kernel@vger.kernel.org; acpi-
> devel@lists.sourceforge.net
> Subject: RE: [ACPI] ACPI and PRREMPT bug
>
> I'm aware of this issue and it is under investigation.
> Bob
>
>
> > -----Original Message-----
> > From: acpi-devel-admin@lists.sourceforge.net [mailto:acpi-devel-
> > admin@lists.sourceforge.net] On Behalf Of Nir Tzachar
> > Sent: Monday, November 07, 2005 1:36 AM
> > To: linux-kernel@vger.kernel.org; acpi-devel@lists.sourceforge.net
> > Subject: [ACPI] ACPI and PRREMPT bug
> >
> > hello.
> >
> > I'm encountering a problem with acpi on kernels where preempt is
> > enabled.
> > The problem is 100% reproducible on all kernels starting from
2.6.12.1
> > to 2.6.14
> > ( i didn't try 2.6.11 and below ).
> >
> > the problem is manifested via the battery proc interface. to produce
it,
> > run in two terminals simultaneously:
> > while true; do cat /proc/acpi/battery/BAT0/info; done
> >
> > if i turn on kernel preemption (either voluntary or not), i get the
> > following error messages in dmesg:
> > Nov 7 08:31:00 lapnir ACPI-0292: *** Error: Looking up [SERN] in
> > namespace, AE_ALREADY_EXISTS
> > Nov 7 08:31:00 lapnir ACPI-0508: *** Error: Method execution failed
> > [\_SB_.PCI0.LPC_.EC__.GBIF] (Node c18f5d60), AE_ALREADY_EXISTS
> > Nov 7 08:31:02 lapnir ACPI-0213: *** Error: Method reached maximum
> > reentrancy limit (255)
> > Nov 7 08:31:02 lapnir ACPI-0508: *** Error: Method execution failed
> > [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f5c20),
AE_AML_METHOD_LIMIT
> >
> > and with acpi debugging info turned on:
> > Nov 7 08:46:08 lapnir dswload-0292: *** Error: Looking up [SERN] in
> > namespace, AE_ALREADY_EXISTS
> > Nov 7 08:46:08 lapnir psloop-0287 [4399] ps_parse_loop :
During
> > name lookup/catalog, AE_ALREADY_EXISTS
> > Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
failed
> > [\_SB_.PCI0.LPC_.EC__.GBIF] (Node c18f94e8), AE_ALREADY_EXISTS
> > Nov 7 08:46:08 lapnir osl-0856 [4403] os_wait_semaphore :
Failed to
> > acquire semaphore[c18de5e0|1|0], AE_TIME
> > Nov 7 08:46:08 lapnir dsmethod-0213: *** Error: Method reached
maximum
> > reentrancy limit (255)
> > Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
failed
> > [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f9268),
AE_AML_METHOD_LIMIT
> > Nov 7 08:46:08 lapnir acpi_battery-0144 [4449] battery_get_info
:
> > Error evaluating _BIF
> > Nov 7 08:46:08 lapnir dsmethod-0213: *** Error: Method reached
maximum
> > reentrancy limit (255)
> > Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
failed
> > [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f9268),
AE_AML_METHOD_LIMIT
> >
> >
> > this is repeated until a reboot. loading and unloading the battery
> > module does not help.
> >
> > My computer is a thinkpad t43p, and i didn't try to reproduce it on
> > another laptop
> > (have no access to another model..).
> > If you need more info, let me know.
> >
> > p.s. please cc me, im not in the list.
> >
> > --
> > =========================================================
> > Nir Tzachar.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [ACPI] ACPI and PRREMPT bug
2005-11-07 20:44 [ACPI] ACPI and PRREMPT bug Moore, Robert
@ 2005-11-07 23:15 ` Chris Wright
2005-11-08 8:17 ` Nir Tzachar
0 siblings, 1 reply; 5+ messages in thread
From: Chris Wright @ 2005-11-07 23:15 UTC (permalink / raw)
To: Moore, Robert; +Cc: tzachar, linux-kernel, acpi-devel
* Moore, Robert (robert.moore@intel.com) wrote:
> You might try setting this flag (in acglobal.h) to TRUE:
>
> /*
> * Automatically serialize ALL control methods? Default is FALSE,
> meaning
> * to use the Serialized/NotSerialized method flags on a per method
> basis.
> * Only change this if the ASL code is poorly written and cannot handle
> * reentrancy even though methods are marked "NotSerialized".
> */
> ACPI_EXTERN UINT8 ACPI_INIT_GLOBAL (AcpiGbl_AllMethodsSerialized,
> FALSE);
I've chatted with another person having this issue. Booting with
acpi_serialize (which sets that flag to true) does seem to fix the
problem. I'm guessing thread_count gets decremented twice for one
increment, causing it to underflow wrapping to -1.
thanks,
-chris
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [ACPI] ACPI and PRREMPT bug
2005-11-07 23:15 ` Chris Wright
@ 2005-11-08 8:17 ` Nir Tzachar
0 siblings, 0 replies; 5+ messages in thread
From: Nir Tzachar @ 2005-11-08 8:17 UTC (permalink / raw)
To: Chris Wright; +Cc: Moore, Robert, linux-kernel, acpi-devel
[-- Attachment #1: Type: text/plain, Size: 477 bytes --]
> Booting with
> acpi_serialize (which sets that flag to true) does seem to fix the
> problem.
this partially solves the problem. im still getting this:
Nov 8 10:08:15 lapnir osl-0965 [3164] os_wait_semaphore : Failed to
acquire semaphore[c193c820|1|0], AE_TIME
Nov 8 10:08:17 lapnir osl-0965 [4647] os_wait_semaphore : Failed to
acquire semaphore[c193c820|1|0], AE_TIME
--
=========================================================
Nir Tzachar.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [ACPI] ACPI and PRREMPT bug
@ 2005-11-07 21:26 Moore, Robert
0 siblings, 0 replies; 5+ messages in thread
From: Moore, Robert @ 2005-11-07 21:26 UTC (permalink / raw)
To: Moore, Robert, tzachar, linux-kernel, acpi-devel
Here's a quick patch that should stop the METHOD_LIMIT errors. It's just
a quick hack, not the correct solution.
Index: source/components/interpreter/parser/psparse.c
===================================================================
RCS file:
/home/cmplr/cvs/acpica/Acpi/source/components/interpreter/parser/psparse
.c,v
retrieving revision 1.158
diff -u -r1.158 psparse.c
--- source/components/interpreter/parser/psparse.c 2 Sep 2005
20:17:39 -0000 1.158
+++ source/components/interpreter/parser/psparse.c 7 Nov 2005
21:15:44 -0000
@@ -647,7 +647,10 @@
{
/* Decrement the thread count on the method parse tree
*/
- WalkState->MethodDesc->Method.ThreadCount--;
+ if (WalkState->MethodDesc->Method.ThreadCount)
+ {
+ WalkState->MethodDesc->Method.ThreadCount--;
+ }
}
AcpiDsTerminateControlMethod (WalkState);
Linux version would look like this:
/* Decrement the thread count on the
method parse tree */
if
(walk_state->method_desc->method.thread_count) {
walk_state->method_desc->method.thread_count--;
}
> -----Original Message-----
> From: Moore, Robert
> Sent: Monday, November 07, 2005 12:44 PM
> To: Moore, Robert; 'tzachar@cs.bgu.ac.il';
'linux-kernel@vger.kernel.org';
> 'acpi-devel@lists.sourceforge.net'
> Subject: RE: [ACPI] ACPI and PRREMPT bug
>
> You might try setting this flag (in acglobal.h) to TRUE:
>
> /*
> * Automatically serialize ALL control methods? Default is FALSE,
meaning
> * to use the Serialized/NotSerialized method flags on a per method
basis.
> * Only change this if the ASL code is poorly written and cannot
handle
> * reentrancy even though methods are marked "NotSerialized".
> */
> ACPI_EXTERN UINT8 ACPI_INIT_GLOBAL
(AcpiGbl_AllMethodsSerialized,
> FALSE);
>
>
>
> > -----Original Message-----
> > From: Moore, Robert
> > Sent: Monday, November 07, 2005 12:42 PM
> > To: 'tzachar@cs.bgu.ac.il'; linux-kernel@vger.kernel.org; acpi-
> > devel@lists.sourceforge.net
> > Subject: RE: [ACPI] ACPI and PRREMPT bug
> >
> > I'm aware of this issue and it is under investigation.
> > Bob
> >
> >
> > > -----Original Message-----
> > > From: acpi-devel-admin@lists.sourceforge.net [mailto:acpi-devel-
> > > admin@lists.sourceforge.net] On Behalf Of Nir Tzachar
> > > Sent: Monday, November 07, 2005 1:36 AM
> > > To: linux-kernel@vger.kernel.org; acpi-devel@lists.sourceforge.net
> > > Subject: [ACPI] ACPI and PRREMPT bug
> > >
> > > hello.
> > >
> > > I'm encountering a problem with acpi on kernels where preempt is
> > > enabled.
> > > The problem is 100% reproducible on all kernels starting from
2.6.12.1
> > > to 2.6.14
> > > ( i didn't try 2.6.11 and below ).
> > >
> > > the problem is manifested via the battery proc interface. to
produce
> it,
> > > run in two terminals simultaneously:
> > > while true; do cat /proc/acpi/battery/BAT0/info; done
> > >
> > > if i turn on kernel preemption (either voluntary or not), i get
the
> > > following error messages in dmesg:
> > > Nov 7 08:31:00 lapnir ACPI-0292: *** Error: Looking up [SERN] in
> > > namespace, AE_ALREADY_EXISTS
> > > Nov 7 08:31:00 lapnir ACPI-0508: *** Error: Method execution
failed
> > > [\_SB_.PCI0.LPC_.EC__.GBIF] (Node c18f5d60), AE_ALREADY_EXISTS
> > > Nov 7 08:31:02 lapnir ACPI-0213: *** Error: Method reached
maximum
> > > reentrancy limit (255)
> > > Nov 7 08:31:02 lapnir ACPI-0508: *** Error: Method execution
failed
> > > [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f5c20),
AE_AML_METHOD_LIMIT
> > >
> > > and with acpi debugging info turned on:
> > > Nov 7 08:46:08 lapnir dswload-0292: *** Error: Looking up [SERN]
in
> > > namespace, AE_ALREADY_EXISTS
> > > Nov 7 08:46:08 lapnir psloop-0287 [4399] ps_parse_loop :
> During
> > > name lookup/catalog, AE_ALREADY_EXISTS
> > > Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
> failed
> > > [\_SB_.PCI0.LPC_.EC__.GBIF] (Node c18f94e8), AE_ALREADY_EXISTS
> > > Nov 7 08:46:08 lapnir osl-0856 [4403] os_wait_semaphore :
Failed
> to
> > > acquire semaphore[c18de5e0|1|0], AE_TIME
> > > Nov 7 08:46:08 lapnir dsmethod-0213: *** Error: Method reached
> maximum
> > > reentrancy limit (255)
> > > Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
> failed
> > > [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f9268),
AE_AML_METHOD_LIMIT
> > > Nov 7 08:46:08 lapnir acpi_battery-0144 [4449] battery_get_info
> :
> > > Error evaluating _BIF
> > > Nov 7 08:46:08 lapnir dsmethod-0213: *** Error: Method reached
> maximum
> > > reentrancy limit (255)
> > > Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
> failed
> > > [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f9268),
AE_AML_METHOD_LIMIT
> > >
> > >
> > > this is repeated until a reboot. loading and unloading the battery
> > > module does not help.
> > >
> > > My computer is a thinkpad t43p, and i didn't try to reproduce it
on
> > > another laptop
> > > (have no access to another model..).
> > > If you need more info, let me know.
> > >
> > > p.s. please cc me, im not in the list.
> > >
> > > --
> > > =========================================================
> > > Nir Tzachar.
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [ACPI] ACPI and PRREMPT bug
@ 2005-11-07 20:42 Moore, Robert
0 siblings, 0 replies; 5+ messages in thread
From: Moore, Robert @ 2005-11-07 20:42 UTC (permalink / raw)
To: tzachar, linux-kernel, acpi-devel
I'm aware of this issue and it is under investigation.
Bob
> -----Original Message-----
> From: acpi-devel-admin@lists.sourceforge.net [mailto:acpi-devel-
> admin@lists.sourceforge.net] On Behalf Of Nir Tzachar
> Sent: Monday, November 07, 2005 1:36 AM
> To: linux-kernel@vger.kernel.org; acpi-devel@lists.sourceforge.net
> Subject: [ACPI] ACPI and PRREMPT bug
>
> hello.
>
> I'm encountering a problem with acpi on kernels where preempt is
> enabled.
> The problem is 100% reproducible on all kernels starting from 2.6.12.1
> to 2.6.14
> ( i didn't try 2.6.11 and below ).
>
> the problem is manifested via the battery proc interface. to produce
it,
> run in two terminals simultaneously:
> while true; do cat /proc/acpi/battery/BAT0/info; done
>
> if i turn on kernel preemption (either voluntary or not), i get the
> following error messages in dmesg:
> Nov 7 08:31:00 lapnir ACPI-0292: *** Error: Looking up [SERN] in
> namespace, AE_ALREADY_EXISTS
> Nov 7 08:31:00 lapnir ACPI-0508: *** Error: Method execution failed
> [\_SB_.PCI0.LPC_.EC__.GBIF] (Node c18f5d60), AE_ALREADY_EXISTS
> Nov 7 08:31:02 lapnir ACPI-0213: *** Error: Method reached maximum
> reentrancy limit (255)
> Nov 7 08:31:02 lapnir ACPI-0508: *** Error: Method execution failed
> [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f5c20), AE_AML_METHOD_LIMIT
>
> and with acpi debugging info turned on:
> Nov 7 08:46:08 lapnir dswload-0292: *** Error: Looking up [SERN] in
> namespace, AE_ALREADY_EXISTS
> Nov 7 08:46:08 lapnir psloop-0287 [4399] ps_parse_loop :
During
> name lookup/catalog, AE_ALREADY_EXISTS
> Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
failed
> [\_SB_.PCI0.LPC_.EC__.GBIF] (Node c18f94e8), AE_ALREADY_EXISTS
> Nov 7 08:46:08 lapnir osl-0856 [4403] os_wait_semaphore : Failed
to
> acquire semaphore[c18de5e0|1|0], AE_TIME
> Nov 7 08:46:08 lapnir dsmethod-0213: *** Error: Method reached
maximum
> reentrancy limit (255)
> Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
failed
> [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f9268), AE_AML_METHOD_LIMIT
> Nov 7 08:46:08 lapnir acpi_battery-0144 [4449] battery_get_info
:
> Error evaluating _BIF
> Nov 7 08:46:08 lapnir dsmethod-0213: *** Error: Method reached
maximum
> reentrancy limit (255)
> Nov 7 08:46:08 lapnir psparse-0508: *** Error: Method execution
failed
> [\_SB_.PCI0.LPC_.EC__.BAT0._BIF] (Node c18f9268), AE_AML_METHOD_LIMIT
>
>
> this is repeated until a reboot. loading and unloading the battery
> module does not help.
>
> My computer is a thinkpad t43p, and i didn't try to reproduce it on
> another laptop
> (have no access to another model..).
> If you need more info, let me know.
>
> p.s. please cc me, im not in the list.
>
> --
> =========================================================
> Nir Tzachar.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2005-11-08 8:14 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-11-07 20:44 [ACPI] ACPI and PRREMPT bug Moore, Robert
2005-11-07 23:15 ` Chris Wright
2005-11-08 8:17 ` Nir Tzachar
-- strict thread matches above, loose matches on Subject: below --
2005-11-07 21:26 Moore, Robert
2005-11-07 20:42 Moore, Robert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®