[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 1/2] x86/apic: fix disabling LVT0 in disconnect_bsp_APIC
On 23.01.2020 19:06, Roger Pau Monne wrote: > The Intel SDM states: > > "When an illegal vector value (0 to 15) is written to a LVT entry and > the delivery mode is Fixed (bits 8-11 equal 0), the APIC may signal an > illegal vector error, without regard to whether the mask bit is set or > whether an interrupt is actually seen on the input." > > And that's exactly what's currently done in disconnect_bsp_APIC when > virt_wire_setup is true and LVT LINT0 is being masked. By writing only > APIC_LVT_MASKED Xen is actually setting the vector to 0 and the > delivery mode to Fixed (0), and hence it triggers an APIC error even > when the LVT entry is masked. > > This would usually manifest when Xen is being shut down, as that's > where disconnect_bsp_APIC is called: > > (XEN) APIC error on CPU0: 40(00) > > Fix this by calling clear_local_APIC prior to setting the LVT LINT > registers which already clear LVT LINT0, and hence the troublesome > write can be avoided as the register is already cleared. > > Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> > Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |