From: Christian Borntraeger <[email protected]> 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: [email protected] Signed-off-by: Christian Borntraeger <[email protected]> Message-Id: <[email protected]> Reviewed-by: David Hildenbrand <[email protected]> Acked-by: Janosch Frank <[email protected]> Signed-off-by: Cornelia Huck <[email protected]> (cherry picked from commit 8b51c0961cc13e55b26bb6665ec3a341abdc7658) Signed-off-by: Michael Roth <[email protected]> --- target/s390x/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/s390x/helper.c b/target/s390x/helper.c index a3a49164e4..6808dfda01 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) -- 2.17.1
