aboutsummaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2020-02-20 14:16:22 +0100
committerCornelia Huck <cohuck@redhat.com>2020-02-26 18:57:07 +0100
commit8b51c0961cc13e55b26bb6665ec3a341abdc7658 (patch)
tree2a6138b5236e87f275ad9254479ad133f58d50c7 /target
parentb91a03946e0f65ddd22927dd80ca1276bf89c5af (diff)
downloadqemu-8b51c0961cc13e55b26bb6665ec3a341abdc7658.zip
qemu-8b51c0961cc13e55b26bb6665ec3a341abdc7658.tar.gz
qemu-8b51c0961cc13e55b26bb6665ec3a341abdc7658.tar.bz2
s390/sclp: improve special wait psw logic
There is a special quiesce PSW that we check for "shutdown". Otherwise disabled wait is detected as "crashed". Architecturally we must only check PSW bits 116-127. Fix this. Cc: qemu-stable@nongnu.org Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Message-Id: <1582204582-22995-1-git-send-email-borntraeger@de.ibm.com> Reviewed-by: David Hildenbrand <david@redhat.com> Acked-by: Janosch Frank <frankja@linux.ibm.com> Signed-off-by: Cornelia Huck <cohuck@redhat.com>
Diffstat (limited to 'target')
-rw-r--r--target/s390x/helper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target/s390x/helper.c b/target/s390x/helper.c
index b810ad4..ed72684 100644
--- a/target/s390x/helper.c
+++ b/target/s390x/helper.c
@@ -89,7 +89,7 @@ hwaddr s390_cpu_get_phys_addr_debug(CPUState *cs, vaddr vaddr)
static inline bool is_special_wait_psw(uint64_t psw_addr)
{
/* signal quiesce */
- return psw_addr == 0xfffUL;
+ return (psw_addr & 0xfffUL) == 0xfffUL;
}
void s390_handle_wait(S390CPU *cpu)