Bug 13974
Summary: | acpi_ex_system_memory_space_handler oops | ||
---|---|---|---|
Product: | ACPI | Reporter: | Sergey Senozhatsky (sergey.senozhatsky) |
Component: | ACPICA-Core | Assignee: | Lin Ming (ming.m.lin) |
Status: | CLOSED UNREPRODUCIBLE | ||
Severity: | high | CC: | lenb, rui.zhang, yakui.zhao |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | .31 -> .32 | Subsystem: | |
Regression: | No | Bisected commit-id: | |
Attachments: |
the acpidump
test patch |
Description
Sergey Senozhatsky
2009-08-13 09:53:14 UTC
I consider 7 successfull boots to mark that kernel is ok (it may be wrong). -git8 maxcpus=1 + + + + + + + acpi_serialize=1 + - boot_delay=1 + + + + + + + boot_delay=0 + + - vga=791 + + + + + + + Bisecting... Sergey Created attachment 22868 [details]
the acpidump
Created attachment 22869 [details]
test patch
There are many AE_ALREADY_EXISTS error, as above dmesg shows.
It is caused by same region/field name defined in different methods.
PCFG/XCFG are defined in method RBPE/RWPE/RDPE/WBPE/WWPE/WDPE/RWDP.
Actually, these definition are valid, but we don't handle this case well
now, so it may cause problem.
Currently, we exit the interpreter when setup region, because it may
execute control methods, such as _REG.
The attached test patch don't exit the interpreter if the region is temporary, namely, it is defined inside amethod.
Sergey has tested it and confirmed that the system boots fine now.
Reply-To: sergey.senozhatsky@gmail.com On (08/27/09 02:44), bugzilla-daemon@bugzilla.kernel.org wrote: > test patch > > There are many AE_ALREADY_EXISTS error, as above dmesg shows. > It is caused by same region/field name defined in different methods. > PCFG/XCFG are defined in method RBPE/RWPE/RDPE/WBPE/WWPE/WDPE/RWDP. > Actually, these definition are valid, but we don't handle this case well > now, so it may cause problem. > > Currently, we exit the interpreter when setup region, because it may > execute control methods, such as _REG. > > The attached test patch don't exit the interpreter if the region is > temporary, > namely, it is defined inside amethod. > > Sergey has tested it and confirmed that the system boots fine now. > Confirmed. Reported/Tested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Sergey Reply-To: sergey.senozhatsky@gmail.com rc7-git5 (patched) [ 0.178628] ACPI: EC: Look up EC in DSDT [ 0.196480] ACPI: Interpreter enabled [ 0.196575] ACPI: (supports S0 S1 S3 S4 S5) [ 0.197184] ACPI: Using IOAPIC for interrupt routing [ 0.197352] PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 [ 0.203511] ACPI Error (dswload-0790): [PCFG] Namespace lookup failure, AE_ALREADY_EXISTS [ 0.203738] ACPI Exception: AE_ALREADY_EXISTS, During name lookup/catalog 20090521 psloop-227 [ 0.203964] ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.RBPE] (Node f7017678), AE_ALREADY_EXISTS [ 0.204256] ACPI: Marking method RBPE as Serialized because of AE_ALREADY_EXISTS error [ 0.204510] ACPI Error (psparse-0537): Method parse/execution failed [\_GPE._L01] (Node f701d198), AE_ALREADY_EXISTS [ 0.204803] ACPI: Marking method _L01 as Serialized because of AE_ALREADY_EXISTS error [ 0.205063] ACPI Exception: AE_ALREADY_EXISTS, while evaluating GPE method [_L01] 20090521 evgpe-568 [ 0.214013] PCI: MCFG area at e0000000 reserved in ACPI motherboard resources [ 0.214108] PCI: updated MCFG configuration 0: base e0000000 segment 0 buses 0 - 63 [ 0.214210] PCI: Using MMCONFIG for extended config space [ 0.227056] ACPI: EC: GPE = 0x1c, I/O: command/status = 0x66, data = 0x62 [ 0.227149] ACPI: EC: driver started in poll mode [ 0.227257] ACPI: No dock devices found. [ 0.227313] ACPI: PCI Root Bridge [PCI0] (0000:00) Sergey Patch: oops fix :confirmed; AE_ALREADY_EXISTS fix :not confirmed. Sergey Sergey, Is the AE_ALREADY_EXISTS error reproducible? And would you please boot the kernel with "acpi_serialize" to see if the bug gone (don't apply the patch) ? Thanks, Lin Ming On (09/10/09 05:36), bugzilla-daemon@bugzilla.kernel.org wrote: > And would you please boot the kernel with "acpi_serialize" to see if the bug > gone (don't apply the patch) ? > Hello Lin, unpatched kernel fail to boot with acpi serialize enabled. Linux version 2.6.31-nopatch dmesg (successful boot, acpi serialize enabled) [..] [ 0.000000] Kernel command line: root=UUID=d44dd563-a831-40b0-9bfd-f460c9430ffa ro single acpi_serialize=1 [ 0.000000] ACPI: serialize enabled [..] [ 0.175320] ACPI: EC: Look up EC in DSDT [ 0.190192] ACPI: Interpreter enabled [ 0.190286] ACPI: (supports S0 S1 S3 S4 S5) [ 0.190702] ACPI: Using IOAPIC for interrupt routing [ 0.192717] PCI: MCFG configuration 0: base e0000000 segment 0 buses 0 - 255 [ 1.200041] ACPI Error: Thread f7050000 cannot release Mutex [MUTE] acquired by thread f7083ed0 20090521 exmutex-391 [ 1.200281] ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.RBPE] (Node f70176a8), AE_AML_NOT_OWNER [ 1.200607] ACPI Error (psparse-0537): Method parse/execution failed [\_SB_.PCI0.P0P4.XCRD._STA] (Node f7015648), AE_AML_NOT_OWNER [ 1.200941] ACPI Error (uteval-0256): Method execution failed [\_SB_.PCI0.P0P4.XCRD._STA] (Node f7015648), AE_AML_NOT_OWNER [ 1.205139] PCI: MCFG area at e0000000 reserved in ACPI motherboard resources [ 1.205235] PCI: updated MCFG configuration 0: base e0000000 segment 0 buses 0 - 63 [ 1.205339] PCI: Using MMCONFIG for extended config space [ 1.217051] ACPI: EC: GPE = 0x1c, I/O: command/status = 0x66, data = 0x62 [ 1.217145] ACPI: EC: driver started in poll mode [ 1.217254] ACPI: No dock devices found. [ 1.217316] ACPI: PCI Root Bridge [PCI0] (0000:00) Sergey > Is the AE_ALREADY_EXISTS error reproducible?
>
Your patch seems to fix it.
Sergey
Hi, Ming From the test it seems that the problem can be fixed by your patch. Will you please push your patch and mark this bug as resovled? Thanks. It's not the final patch. The root cause is not clear yet. > --- Comment #12 from Lin Ming <ming.m.lin@intel.com> 2009-09-29 02:21:47 ---
> It's not the final patch.
> The root cause is not clear yet.
I did nearly 17 reboots... and unpatched kernel seems to boot fine (rc1, rc3).
$ git log drivers/acpi/
Shows lots of "bugzilla related" commits. So, I'm in loss.
I'm not sure that 17 reboots is enough to prove test correctness.
As far as I remember there were ~78K changes between .31 and .32-rc1. It makes
bisecting kind of unusable.
I'll test unpatched rc4 today.
Sergey
Hi, After 50 reboots it seems that unpatched .32-rc4 boots ok. Sergey Thanks Sergey. Close it since system boots ok with latest kernel. please re-open if this problem comes back |