Re: [PATCH] xen: Don't call arch_trigger_all_cpu_backtrace indom0(pvm)

From: Konrad Rzeszutek Wilk
Date: Mon Apr 01 2013 - 08:41:34 EST


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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/