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. Changes in v2: - Re-based to github.com/agraf/qemu.git branch: ppc-next - Merged patches 4 and 5. - Incorporated other review comments --- Aravinda Prasad (4): 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 hw/ppc/spapr.c | 4 + hw/ppc/spapr_hcall.c | 178 ++++++++++++++++++++++++++++++++++++++++++++++++ hw/ppc/spapr_rtas.c | 116 +++++++++++++++++++++++++++++++ include/hw/ppc/spapr.h | 13 +++- 4 files changed, 309 insertions(+), 2 deletions(-) -- Aravinda Prasad