diff options
author | Thomas Huth <thuth@linux.vnet.ibm.com> | 2014-01-14 12:13:32 +0100 |
---|---|---|
committer | Christian Borntraeger <borntraeger@de.ibm.com> | 2014-02-27 09:51:25 +0100 |
commit | e8803d93df1bbaebe015b602a8178b424903bf5f (patch) | |
tree | cabda9d190da4e5fb015c8064ea0215bf4d0c8ef /target-s390x | |
parent | 6e25280216fc23c8387892f76d961559da124528 (diff) | |
download | hqemu-e8803d93df1bbaebe015b602a8178b424903bf5f.zip hqemu-e8803d93df1bbaebe015b602a8178b424903bf5f.tar.gz |
s390x/sclp: Fixed setting of condition code register
In the SCLP handler function, the condition code register must
only be set if no exception occured.
Signed-off-by: Thomas Huth <thuth@linux.vnet.ibm.com>
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Diffstat (limited to 'target-s390x')
-rw-r--r-- | target-s390x/kvm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c index e7b3b13..d3f0d4a 100644 --- a/target-s390x/kvm.c +++ b/target-s390x/kvm.c @@ -451,8 +451,9 @@ static int kvm_sclp_service_call(S390CPU *cpu, struct kvm_run *run, r = sclp_service_call(env, sccb, code); if (r < 0) { enter_pgmcheck(cpu, -r); + } else { + setcc(cpu, r); } - setcc(cpu, r); return 0; } |