On Tue, 12 Mar 2019 15:32:51 +0530 Aravinda Prasad <[email protected]> wrote:
> This patch set adds support for FWNMI in PowerKVM guests. > > System errors such as SLB multihit and memory errors > that cannot be corrected by hardware is passed on to > the kernel for handling by raising machine check > exception (an NMI). Upon such machine check exceptions, > if the address in error belongs to guest then KVM > invokes guests' 0x200 interrupt vector if the guest > is not FWNMI capable. For FWNMI capable guest > KVM passes the control to QEMU by exiting the guest. > > This patch series adds functionality to QEMU to pass > on such machine check exceptions to the FWNMI capable > guest kernel by building an error log and invoking > the guest registered machine check handling routine. > > The KVM changes are now part of the upstream kernel > (commit e20bbd3d). This series contain QEMU changes. > Hi Aravinda, Please rebase this series because of the "spapr: Use CamelCase properly" patch, now merged in master: https://git.qemu.org/?p=qemu.git;a=commit;h=ce2918cbc31e190e7d644c684dcc2bbcb6b9a9df Cheers, -- Greg > Change Log v6: > - Fetches rtas_addr from fdt > - Handles all error conditions (earlier it was only UEs) > > Change Log v5: > - Handled VM migrations by including rtas_addr in VMSTATE. > - Migration is blocked while a machine check is in progress. > > --- > > Aravinda Prasad (6): > ppc: spapr: Handle "ibm,nmi-register" and "ibm,nmi-interlock" RTAS calls > Wrapper function to wait on condition for the main loop mutex > target/ppc: Handle NMI guest exit > target/ppc: Build rtas error log > ppc: spapr: Enable FWNMI capability > migration: Block migration while handling machine check > > > cpus.c | 5 + > hw/ppc/spapr.c | 29 +++++ > hw/ppc/spapr_events.c | 286 > ++++++++++++++++++++++++++++++++++++++++++++++ > hw/ppc/spapr_rtas.c | 55 +++++++++ > include/hw/ppc/spapr.h | 23 ++++ > include/qemu/main-loop.h | 8 + > target/ppc/kvm.c | 30 +++++ > target/ppc/kvm_ppc.h | 8 + > 8 files changed, 443 insertions(+), 1 deletion(-) > > -- > Aravinda Prasad > >
