[PATCH v5 0/3] xen/x86: implement NMI continuation

Juergen Gross posted 3 patches 3 years, 5 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/xen tags/patchew/20201112131424.9930-1-jgross@suse.com
Maintainers: Jan Beulich <jbeulich@suse.com>, Wei Liu <wl@xen.org>, Andrew Cooper <andrew.cooper3@citrix.com>, "Roger Pau Monné" <roger.pau@citrix.com>
xen/arch/x86/apic.c             | 13 +++++++---
xen/arch/x86/genapic/x2apic.c   |  1 +
xen/arch/x86/oprofile/nmi_int.c | 19 ++++++++++++--
xen/arch/x86/smp.c              |  1 +
xen/arch/x86/traps.c            | 46 ++++++++++++++++++++++++++++-----
xen/include/asm-x86/nmi.h       | 11 +++++++-
xen/include/asm-x86/softirq.h   |  5 ++--
xen/include/asm-x86/xenoprof.h  |  7 +++++
8 files changed, 88 insertions(+), 15 deletions(-)
[PATCH v5 0/3] xen/x86: implement NMI continuation
Posted by Juergen Gross 3 years, 5 months ago
Move sending of a virq event for oprofile to the local vcpu from NMI
to normal interrupt context.

This has been tested with a small test patch using the continuation
framework of patch 1 for all NMIs and doing a print to console in
the continuation handler.

Version 1 of this small series was sent to the security list before.

Changes in V3:
- switched to self-IPI instead of softirq
- added patch 3

Changes in V4:
- use less generic approach

Changes in V5:
- addressed comments

Juergen Gross (3):
  xen/x86: add nmi continuation framework
  xen/oprofile: use NMI continuation for sending virq to guest
  xen/x86: issue pci_serr error message via NMI continuation

 xen/arch/x86/apic.c             | 13 +++++++---
 xen/arch/x86/genapic/x2apic.c   |  1 +
 xen/arch/x86/oprofile/nmi_int.c | 19 ++++++++++++--
 xen/arch/x86/smp.c              |  1 +
 xen/arch/x86/traps.c            | 46 ++++++++++++++++++++++++++++-----
 xen/include/asm-x86/nmi.h       | 11 +++++++-
 xen/include/asm-x86/softirq.h   |  5 ++--
 xen/include/asm-x86/xenoprof.h  |  7 +++++
 8 files changed, 88 insertions(+), 15 deletions(-)

-- 
2.26.2