Messages in this thread | | | Date | Mon, 1 Apr 2013 08:41:18 -0400 | From | Konrad Rzeszutek Wilk <> | Subject | Re: [PATCH] xen: Don't call arch_trigger_all_cpu_backtrace in dom0(pvm) |
| |
On Mon, Apr 01, 2013 at 01:26:34PM +0800, Zhenzhong Duan wrote: > > On 2013-03-29 21:46, Konrad Rzeszutek Wilk wrote: > >On Fri, Mar 29, 2013 at 03:22:38PM +0800, Zhenzhong Duan wrote: > >>nmi isn't supported in dom0, fallback to general all cpu backtrace code. > >> > >>Without fix, on xapic system, sysrq+l, no backtrace is showed. > >>On x2apic enabled system, got NULL pointer dereference as below. > >Why would the x2APIC or xAPIC make a difference here? The Linux dom0 > >is not fiddling with the APIC - that is the hypervisor job. > In x2apic enabled system, dom0 kernel set apic pointer to > apic_x2apic_cluster or apic_x2apic_phys.
> When sending nmi, apic->send_IPI_all copy cpumask which isn't initialized. > For xapic system, apic->send_IPI_all=xen_send_IPI_all apic, this > func does nothing for nmi, so no backtrace. > >Can you explain to me why x2apic_send_IPI_mask is even set? Wouldn't > >the Xen version of send_IPI be present? (See xen_smp_ops) > It's overwrited by x2apic initialization.
That explanation needs to be part of the git commit. > The problem is even without overwrite, like xapic system, > xen_send_IPI_all doesn't work for nmi vector.
Can you tweak the x2apic_mode = 0 in enligthen.c for example? Or clear the X86_FEATURE_X2APIC in the enlighten.c ? (Similar to how the other features are cleared) Wouldn't that stop x2apic_enabled from detecting x2APIC?
Sure. > zduan
| |