This adds machine-specific NMI handlers support. This QOM approach was copied from FWPathProvider.
Few questions so far. Should deliver_nmi() accept a CPU? A comment in hmp-commands.hx says "Inject an NMI (x86), RESTART (s390x) on the given CPU" but in fact qmp_inject_nmi() delivers NMI to every x86 CPU while it delivers only to the current s390 CPU. Please comment. Thanks! Alexey Kardashevskiy (2): spapr: Add NMI interface spapr: Define NMI interface cpus.c | 7 ++++++- hmp-commands.hx | 4 +--- hw/core/Makefile.objs | 1 + hw/core/nmi.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ hw/ppc/spapr.c | 26 ++++++++++++++++++++++++++ include/hw/nmi.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 132 insertions(+), 4 deletions(-) create mode 100644 hw/core/nmi.c create mode 100644 include/hw/nmi.h -- 1.8.4.rc4