[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] ERST problems
>>> On 22.03.13 at 00:22, Andrew Cooper <andrew.cooper3@xxxxxxxxxx> wrote: > Hello, > > When debugging ERST boot time hangs, the following debugging proved > interesting > > From a Dell Poweredge 2950 with latest BIOS: > > (XEN) Enabling APIC mode: Flat. Using 1 I/O APICs > (XEN) ACPI: HPET id: 0x8086a201 base: 0xfed00000 > (XEN) erst_init() > (XEN) Found ERST > (XEN) ERST is good > (XEN) About to exec ctx_init() > (XEN) About to exec pre map > (XEN) Starting apei_exec_for_each_entry(). ctx->entries = 15 > (XEN) .. i = 0, entry = 0xffff82c3ffd7ab48, ins = 0x3 > (XEN) .. i = 1, entry = 0xffff82c3ffd7ab68, ins = 0x3 > (XEN) .. i = 2, entry = 0xffff82c3ffd7ab88, ins = 0x3 > (XEN) .. i = 3, entry = 0xffff82c3ffd7aba8, ins = 0x3 > (XEN) .. i = 4, entry = 0xffff82c3ffd7abc8, ins = 0x2 > (XEN) .. i = 5, entry = 0xffff82c3ffd7abe8, ins = 0x3 > (XEN) .. i = 6, entry = 0xffff82c3ffd7ac08, ins = 0x3 > (XEN) .. i = 7, entry = 0xffff82c3ffd7ac28, ins = 0x3 > (XEN) .. i = 8, entry = 0xffff82c3ffd7ac48, ins = 0x1 > (XEN) .. i = 9, entry = 0xffff82c3ffd7ac68, ins = 0x0 > (XEN) .. i = 10, entry = 0xffff82c3ffd7ac88, ins = 0x0 > (XEN) .. i = 11, entry = 0xffff82c3ffd7aca8, ins = 0x2 > (XEN) .. i = 12, entry = 0xffff82c3ffd7acc8, ins = 0x0 > (XEN) .. i = 13, entry = 0xffff82c3ffd7ace8, ins = 0x3 > (XEN) .. i = 14, entry = 0xffff82c3ffd7ad08, ins = 0x3 > (XEN) About to get range > (XEN) in erst_get_erange() > (XEN) range->base = 0xffff83007fb4f0a0 > (XEN) range->size = 0xffff83007fb4f0a0 > (XEN) range->attr = 0x7fb4f0a0 > (XEN) About to pre map (0xffff83007fb4f0a0, 0xffff83007fb4f0a0) > (XEN) Error -12, about to unmap gars > (XEN) Starting apei_exec_for_each_entry(). ctx->entries = 15 > (XEN) .. i = 0, entry = 0xffff82c3ffd7ab48, ins = 0x3 > (XEN) apei_post_unmap_gar(0xffff82c3ffd7ab4c)... . aok > (XEN) .. i = 1, entry = 0xffff82c3ffd7ab68, ins = 0x3 > (XEN) apei_post_unmap_gar(0xffff82c3ffd7ab6c)... . aok > (XEN) .. i = 2, entry = 0xffff82c3ffd7ab88, ins = 0x3 > (XEN) apei_post_unmap_gar(0xffff82c3ffd7ab8c)... . > > The hang at this point turns out to be trivial mis-locking issue, and I > have submitted a patch to fix it. > > However, this debugging shows that erst_get_erange() is clearly > returning junk, causing apei_pre_map() to fail. If I'm getting this right, the three apei_exec_run()s there just do nothing, leaving the output uninitialized. That's because the ERST table doesn't contain instructions for the three actions involved here. All we appear to be missing in this case is Linux commit eecf2f7124834dd1cad21807526a8ea031ba8217. I'll get that ported over... Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |