summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <heiko.carstens@de.ibm.com>2013-03-25 16:22:49 (GMT)
committerGleb Natapov <gleb@redhat.com>2013-04-02 13:14:20 (GMT)
commitd21683ea1f1b03823928a98b6380332b9385e3a7 (patch)
tree08abf3cfe3538a7b4473a88cfb4778b88071365a
parent2cef4deb4018c02fb3cd08f76c8a988f7ddee480 (diff)
downloadlinux-d21683ea1f1b03823928a98b6380332b9385e3a7.tar.xz
KVM: s390: fix 24 bit psw handling in lpsw/lpswe handler
When checking for validity the lpsw/lpswe handler check that only the lower 20 bits instead of 24 bits have a non-zero value. There handling valid psws as invalid ones. Fix the 24 bit psw mask. Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> Signed-off-by: Gleb Natapov <gleb@redhat.com>
-rw-r--r--arch/s390/kvm/priv.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/kvm/priv.c b/arch/s390/kvm/priv.c
index 7db2ad0..7b397b3 100644
--- a/arch/s390/kvm/priv.c
+++ b/arch/s390/kvm/priv.c
@@ -255,7 +255,7 @@ static void handle_new_psw(struct kvm_vcpu *vcpu)
#define PSW_MASK_ADDR_MODE (PSW_MASK_EA | PSW_MASK_BA)
#define PSW_MASK_UNASSIGNED 0xb80800fe7fffffffUL
-#define PSW_ADDR_24 0x00000000000fffffUL
+#define PSW_ADDR_24 0x0000000000ffffffUL
#define PSW_ADDR_31 0x000000007fffffffUL
int kvm_s390_handle_lpsw(struct kvm_vcpu *vcpu)