This series of patches add support for fwnmi in powerKVM guests. Currently upon machine check exception, if the address in error belongs to guest then KVM invokes guest's NMI interrupt vector 0x200.
This patch series adds functionality where the guest's 0x200 interrupt vector is patched such that QEMU gets control. QEMU then builds error log and reports the error to OS registered machine check handlers through RTAS space. Apart from this, the patch series also takes care of synchronization when multiple processors encounter machine check at or about the same time. The patch set was tested by simulating a machine check error in the guest. --- Aravinda Prasad (5): target-ppc: Extend rtas-blob target-ppc: Register and handle HCALL to receive updated RTAS region target-ppc: Build error log target-ppc: Handle ibm,nmi-register RTAS call target-ppc: Handle cases when multi-processors get machine-check hw/ppc/spapr.c | 13 ++- hw/ppc/spapr_hcall.c | 168 +++++++++++++++++++++++++++++++++++++++ hw/ppc/spapr_rtas.c | 101 +++++++++++++++++++++++ include/hw/ppc/spapr.h | 15 +++ pc-bios/spapr-rtas/spapr-rtas.S | 12 +++ 5 files changed, 301 insertions(+), 8 deletions(-) -- Aravinda Prasad