Re: [PATCH v3 1/1] KVM: PPC: Book3S: correct width in XER handling
From: Thomas Huth <hidden>
Date: 2015-07-16 21:13:32
On 05/27/2015 01:56 AM, Sam Bobroff wrote:
In 64 bit kernels, the Fixed Point Exception Register (XER) is a 64 bit field (e.g. in kvm_regs and kvm_vcpu_arch) and in most places it is accessed as such. This patch corrects places where it is accessed as a 32 bit field by a 64 bit kernel. In some cases this is via a 32 bit load or store instruction which, depending on endianness, will cause either the lower or upper 32 bits to be missed. In another case it is cast as a u32, causing the upper 32 bits to be cleared. This patch corrects those places by extending the access methods to 64 bits. Signed-off-by: Sam Bobroff <redacted>
Reviewed-by: Thomas Huth <redacted> Actually this patch also fixes a bug that SLOF sometimes crashes when a vCPU gets kicked out of kernel mode (see the following URL for details: https://bugzilla.redhat.com/show_bug.cgi?id=1178502 ), and I've just tested that this bug does not occur with this patch anymore, so also: Tested-by: Thomas Huth <redacted>