]> git.proxmox.com Git - mirror_qemu.git/commit - target-s390x/helper.c
s390: Fix handling of iscs.
authorCornelia Huck <cornelia.huck@de.ibm.com>
Thu, 7 Feb 2013 02:20:51 +0000 (02:20 +0000)
committerAnthony Liguori <aliguori@us.ibm.com>
Wed, 13 Feb 2013 17:56:02 +0000 (11:56 -0600)
commit91b0a8f33419573c1d741e49559bfb666fd8b1f0
tree7b567f0af4b64b3f2274719b008f21f5f4b7ec7d
parentbd9a8d852c857fd19c4626acaac1d4979f816f3a
s390: Fix handling of iscs.

There are two ways to express an interruption subclass:
- As a bitmask, as used in cr6.
- As a number, as used in the I/O interruption word.

Unfortunately, we have treated to I/O interruption word as if it
contained the bitmask as well, which went unnoticed so far as
- (queued-for-next) kvm made the same mistake, and
- Linux guest kernels don't check the isc value in the I/O interruption
  word for subchannel interrupts.

Make sure that we treat the I/O interruption word correctly.

Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
hw/s390x/css.c
target-s390x/cpu.h
target-s390x/helper.c
target-s390x/ioinst.h