This adds an NMI handler per CPUs. x86, s390 and ppc CPUS are supported.
The change to existing behaviour is that x86 only delivers NMI to
the current monitored CPU now, not to every CPU.
Please comment. Thanks.
Changes:
v3:
* patches reorganized
* comments from v2 addressed, more details are in individual commit logs
v2:
* moved from machine interface to CPUClass callback
* s390 and x86 moved to target-s390/target-i386
* x86 handler delivers to the current CPU only now
Alexey Kardashevskiy (4):
cpus: Define NMI callback
target-s390x: Migrate to new nmi() CPU callback
target-i386: Migrate to new nmi() CPU callback
target-ppc: Add support for new nmi() CPU callback
cpus.c | 33 +++++++--------------------------
hmp-commands.hx | 6 ++----
include/qom/cpu.h | 1 +
qapi-schema.json | 4 +---
qmp-commands.hx | 3 +--
target-i386/cpu.c | 16 ++++++++++++++++
target-ppc/cpu-qom.h | 1 +
target-ppc/excp_helper.c | 8 ++++++++
target-ppc/translate_init.c | 17 +++++++++++++++++
target-s390x/cpu.c | 6 ++++++
10 files changed, 60 insertions(+), 35 deletions(-)