* AML parser modifications - 2.6.10 - 2.6.10-bk7 - AE_AML_BUFFER_LIMIT
@ 2005-02-04 21:35 Thomas Renninger
[not found] ` <4203EA90.6020005-smMupaH/RwJM7kwft8N7nw@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Thomas Renninger @ 2005-02-04 21:35 UTC (permalink / raw)
To: ML ACPI-devel
Hi,
I have a machine booting with 2.6.10 not booting any more with 2.6.10-bk7 .
The error during boot is (sorry for the bad formatting):
Executing all Device _STA and_INI methods:.....exoparg2-0436 [14]
ex_opcode_2A_1T_1R : Index value (14) beyond end of buffer (14)
psparse-1138: *** Error: Method execution failed [\STRC] (Node
ffff8100018b5130), AE_AML_BUFFER_LIMIT psparse-1138: *** Error: Method
execution failed [\_SB_.PCI0._INI] (Node ffff8100018a00b0),
AE_AML_BUFFER_LIMIT nsinit-0414 [06] ns_init_one_device :
\_SB_.PCI0._INI._INI failed: AE_AML_BUFFER_LIMIT
...................................................
56 Devices found containing: 56 _STA, 1 _INI methods
The error is thrown in a kind of "strcmp" function \_STRC that compares
the operating system string:
Method (STRC, 2, NotSerialized)
{
If (LNot (LEqual (SizeOf (Arg0), SizeOf (Arg1))))
{
Return (0x00)
}
Add (SizeOf (Arg0), 0x01, Local0)
Name (BUF0, Buffer (Local0) {})
Name (BUF1, Buffer (Local0) {})
Store (Arg0, BUF0)
Store (Arg1, BUF1)
While (Local0)
{
Decrement (Local0)
If (LNot (LEqual (DerefOf (Index (BUF0, Local0)), DerefOf
(Index (BUF1, Local0)))))
{
Return (Zero)
}
}
Return (One)
}
_______________________________________________________________________
Adding these addtional debug statements:
Method (STRC, 2, NotSerialized)
{
Store (Arg0, Debug)
Store (Arg1, Debug)
Store (sizeof(Arg0), Debug)
Store (sizeof(Arg1), Debug)
If (LNot (LEqual (SizeOf (Arg0), SizeOf (Arg1))))
{
Return (0x00)
}
Store ("Strings should have the same size", Debug)
Add (SizeOf (Arg0), 0x01, Local0)
Name (BUF0, Buffer (Local0) {})
Add (SizeOf (Arg1), 0x01, Local0)
Name (BUF1, Buffer (Local0) {})
Store (Arg0, BUF0)
Store (Arg1, BUF1)
While (Local0)
{
Decrement (Local0)
Store (Local0, Debug)
If (LNot (LEqual (DerefOf (Index (BUF0, Local0)), DerefOf
(Index (BUF1, Local0)))))
{
Return (Zero)
}
}
Return (One)
}
Gave me this output:
Completing Region/Field/Buffer/Package
initialization:........................................................
..............................
Initialized 36/36 Regions 18/18 Fields 19/19 Buffers 13/23 Packages (681
nodes)
Executing all Device _STA and_INI methods:.....[ACPI Debug] String:
[0x14] "Microsoft Windows NT"
[ACPI Debug] String: [0x11] "Microsoft Windows"
[ACPI Debug] Integer: 0x00000014
[ACPI Debug] Integer: 0x00000011
[ACPI Debug] String: [0x14] "Microsoft Windows NT"
[ACPI Debug] String: [0x14] "Microsoft Windows NT"
[ACPI Debug] Integer: 0x00000014
[ACPI Debug] Integer: 0x00000014
[ACPI Debug] String: [0x21] "Strings should have the same size"
[ACPI Debug] Integer: 0x00000014
exoparg2-0436 [14] ex_opcode_2A_1T_1R : Index value (14) beyond end
of buffer (14)
psparse-1138: *** Error: Method execution failed [\STRC] (Node
ffff81001fce5130), AE_AML_BUFFER_LIMIT
psparse-1138: *** Error: Method execution failed [\_SB_.PCI0._INI]
(Node ffff81001fcd00b0), AE_AML_BUFFER_LIM
IT
nsinit-0414 [06] ns_init_one_device : \_SB_.PCI0._INI._INI failed:
AE_AML_BUFFER_LIMIT
__________________________________________________________________________
Seems as if accessing BUF0[20] (C style) the kernel thinks the index is
out of bounds, but it shouldn't ?!?
Is this a regression in the kernel, or was the dsdt code/syntax always
wrong, but accepted by previous kernels?
Tell me if you need more info.
Thanks,
Thomas
-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
^ permalink raw reply [flat|nested] 3+ messages in thread* RE: AML parser modifications - 2.6.10 - 2.6.10-bk7 - AE_AML_BUFFER_LIMIT
@ 2005-02-07 22:15 Moore, Robert
0 siblings, 0 replies; 3+ messages in thread
From: Moore, Robert @ 2005-02-07 22:15 UTC (permalink / raw)
To: Jan Kasprzak, Thomas Renninger; +Cc: ML ACPI-devel
This was fixed recently:
14 January 2005. Summary of changes for version 20050114:
1) ACPI CA Core Subsystem:
Fixed an issue with the String-to-Buffer conversion code where the
string null terminator was not included in the buffer after conversion,
but there is existing ASL that assumes the string null terminator is
included. This is the root of the ACPI_AML_BUFFER_LIMIT regression. This
problem was introduced in the previous version when the code was updated
to correctly set the converted buffer size as per the ACPI
specification. The ACPI spec is ambiguous and will be updated to specify
that the null terminator must be included in the converted buffer. This
also affects the ToBuffer() ASL operator.
> -----Original Message-----
> From: acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> [mailto:acpi-devel-admin-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org] On Behalf Of
> Jan Kasprzak
> Sent: Monday, February 07, 2005 3:18 AM
> To: Thomas Renninger
> Cc: ML ACPI-devel
> Subject: Re: [ACPI] AML parser modifications - 2.6.10 -
> 2.6.10-bk7 - AE_AML_BUFFER_LIMIT
>
>
> Thomas Renninger wrote:
> :
> : I have a machine booting with 2.6.10 not booting any more
> with 2.6.10-bk7 .
>
> I want to add a "me too" (I have posted this few days
> ago). Asus M6R, the similar "kind-of-strcmp" method, which
> fails on newer kernels with AE_AML_BUFFER_LIMIT (2.6.9 is OK).
>
> [...]
> : Seems as if accessing BUF0[20] (C style) the kernel thinks
> the index is
> : out of bounds, but it shouldn't ?!?
> : Is this a regression in the kernel, or was the dsdt
> code/syntax always
> : wrong, but accepted by previous kernels?
>
> I don't know either. But 2.6.9 seems to be OK WRT this.
>
> -Y.
>
> --
> | Jan "Yenya" Kasprzak <kas at {fi.muni.cz - work |
> yenya.net - private}> |
> | GPG: ID 1024/D3498839 Fingerprint 0D99A7FB206605D7
> 8B35FCDE05B18A5E |
> | http://www.fi.muni.cz/~kas/ Czech Linux Homepage:
> http://www.linux.cz/ |
> > Whatever the Java applications and desktop dances may lead
> to, Unix will <
> > still be pushing the packets around for a quite a while.
> --Rob Pike <
>
>
> -------------------------------------------------------
> This SF.Net email is sponsored by: IntelliVIEW -- Interactive
> Reporting Tool for open source databases. Create drag-&-drop
> reports. Save time by over 75%! Publish reports on the web.
> Export to DOC, XLS, RTF, etc. Download a FREE copy at
> http://www.intelliview.com/go/osdn_nl
> _______________________________________________
> Acpi-devel mailing list
> Acpi-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org
> https://lists.sourceforge.net/lists/listinfo/acpi-devel
>
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_ide95&alloc_id\x14396&op=click
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-02-07 22:15 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-02-04 21:35 AML parser modifications - 2.6.10 - 2.6.10-bk7 - AE_AML_BUFFER_LIMIT Thomas Renninger
[not found] ` <4203EA90.6020005-smMupaH/RwJM7kwft8N7nw@public.gmane.org>
2005-02-07 11:17 ` Jan Kasprzak
-- strict thread matches above, loose matches on Subject: below --
2005-02-07 22:15 Moore, Robert
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox