From: Thomas Huth <th...@linux.vnet.ibm.com>

I missed to set the CC in the CHSC instruction when I refactored
the CC setting in the IO instructions with the following commit:
        5d9bf1c07c1369ab3506fc82cc65a10f4415d867
        s390/ioinst: Moved the CC setting to the IO instruction handlers
This patch now restores the correct behaviour of CHSC by setting the
condition code 0 at the end of the instruction.

Signed-off-by: Thomas Huth <th...@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.h...@de.ibm.com>
Signed-off-by: Jens Freimann <jf...@linux.vnet.ibm.com>
Signed-off-by: Alexander Graf <ag...@suse.de>
---
 target-s390x/ioinst.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/target-s390x/ioinst.c b/target-s390x/ioinst.c
index 8d6363d..b8a6486 100644
--- a/target-s390x/ioinst.c
+++ b/target-s390x/ioinst.c
@@ -622,6 +622,7 @@ void ioinst_handle_chsc(S390CPU *cpu, uint32_t ipb)
         break;
     }
 
+    setcc(cpu, 0);    /* Command execution complete */
 out:
     s390_cpu_physical_memory_unmap(env, req, map_size, 1);
 }
-- 
1.6.0.2


Reply via email to