diff options
author | Christian Borntraeger <borntraeger@de.ibm.com> | 2015-06-19 15:40:45 +0200 |
---|---|---|
committer | Cornelia Huck <cornelia.huck@de.ibm.com> | 2015-06-30 09:34:58 +0200 |
commit | bdc7fe3638fa7693eed5886b5b2afe0858d875fc (patch) | |
tree | f8e5f0682c9b9fde00162b0d65f2c8e6f058428d /pc-bios/s390-ccw/sclp-ascii.c | |
parent | ec7353a146bb39c3bb3e5ccc50ca585aed97b7cf (diff) |
s390-ccw.img: Consume service interrupts
We have to consume the outstanding service interrupt after each
service call, otherwise a correct implementation will return
CC=2 on subsequent service calls.
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Diffstat (limited to 'pc-bios/s390-ccw/sclp-ascii.c')
-rw-r--r-- | pc-bios/s390-ccw/sclp-ascii.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/pc-bios/s390-ccw/sclp-ascii.c b/pc-bios/s390-ccw/sclp-ascii.c index 761fb44ff5..dc1c3e4f4d 100644 --- a/pc-bios/s390-ccw/sclp-ascii.c +++ b/pc-bios/s390-ccw/sclp-ascii.c @@ -24,6 +24,7 @@ static int sclp_service_call(unsigned int command, void *sccb) " srl %0,28" : "=&d" (cc) : "d" (command), "a" (__pa(sccb)) : "cc", "memory"); + consume_sclp_int(); if (cc == 3) return -EIO; if (cc == 2) |