powerpc/book3s: Fix guest MC delivery mechanism to avoid soft lockups in guest.
authorMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Wed, 11 Jun 2014 08:48:21 +0000 (14:18 +0530)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 11 Jun 2014 09:15:15 +0000 (19:15 +1000)
commit74845bc2fa9c0e6b218821cd4e1eb7a552d3e503
treeea880beba8879b6c97dbea43bbfe530b56f48e40
parente6654d5b4259317be82b06cf9218f82abec8c8e7
powerpc/book3s: Fix guest MC delivery mechanism to avoid soft lockups in guest.

Currently we forward MCEs to guest which have been recovered by guest.
And for unhandled errors we do not deliver the MCE to guest. It looks like
with no support of FWNMI in qemu, guest just panics whenever we deliver the
recovered MCEs to guest. Also, the existig code used to return to host for
unhandled errors which was casuing guest to hang with soft lockups inside
guest and makes it difficult to recover guest instance.

This patch now forwards all fatal MCEs to guest causing guest to crash/panic.
And, for recovered errors we just go back to normal functioning of guest
instead of returning to host. This fixes soft lockup issues in guest.
This patch also fixes an issue where guest MCE events were not logged to
host console.

Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kvm/book3s_hv_ras.c
arch/powerpc/kvm/book3s_hv_rmhandlers.S