Hello,
Commit:
5500d265a2a8fa63d60c08beb549de8ec82ff7a5
x86/smp: use APIC ALLBUT destination shorthand when possible
Introduced a bogus usage of the scratch cpumask: it was used in a
function that could be called from interrupt context, and hence using
the scratch cpumask there is not safe. Patch #4 is a fix for that usage,
together with also preventing the usage of any per-CPU variables when
send_IPI_mask is called from #MC or #NMI context. Previous patches are
preparatory changes.
Patch #5 adds some debug infrastructure to make sure the scratch cpumask
is used in the right context, and hence should prevent further missuses.
Thanks, Roger.
Roger Pau Monne (5):
x86: introduce a nmi_count tracking variable
x86: track when in #NMI context
x86: track when in #MC context
x86/smp: use a dedicated scratch cpumask in send_IPI_mask
x86: add accessors for scratch cpu mask
xen/arch/x86/cpu/mcheck/mce.c | 2 ++
xen/arch/x86/io_apic.c | 6 ++--
xen/arch/x86/irq.c | 13 +++++++--
xen/arch/x86/mm.c | 30 ++++++++++++++------
xen/arch/x86/msi.c | 4 ++-
xen/arch/x86/nmi.c | 11 ++++----
xen/arch/x86/smp.c | 52 ++++++++++++++++++++++++++++++++++-
xen/arch/x86/smpboot.c | 10 +++++--
xen/arch/x86/traps.c | 10 ++++++-
xen/include/asm-x86/hardirq.h | 13 ++++++++-
xen/include/asm-x86/nmi.h | 2 ++
xen/include/asm-x86/smp.h | 10 +++++++
xen/include/xen/irq_cpustat.h | 1 -
13 files changed, 137 insertions(+), 27 deletions(-)
--
2.25.0
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel