KVM: PPC: Book3S: Fix size of the PSPB register
authorThomas Huth <thuth@redhat.com>
Wed, 2 Sep 2015 09:14:48 +0000 (11:14 +0200)
committerPaul Mackerras <paulus@samba.org>
Thu, 3 Sep 2015 06:09:09 +0000 (16:09 +1000)
commitf35f3a48d6ee810557b58e6b7d933438999401b6
tree19e305d21611b85a65697b0b2034181163eed6df
parent06554d9f6cc8f0b5ec903db19726a15dfc7b09d6
KVM: PPC: Book3S: Fix size of the PSPB register

The size of the Problem State Priority Boost Register is only
32 bits, but the kvm_vcpu_arch->pspb variable is declared as
"ulong", ie. 64-bit. However, the assembler code accesses this
variable with 32-bit accesses, and the KVM_REG_PPC_PSPB macro
is defined with SIZE_U32, too, so that the current code is
broken on big endian hosts: kvmppc_get_one_reg_hv() will only
return zero for this register since it is using the wrong half
of the pspb variable. Let's fix this problem by adjusting the
size of the pspb field in the kvm_vcpu_arch structure.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/include/asm/kvm_host.h