aboutsummaryrefslogtreecommitdiff
path: root/hw/s390x
diff options
context:
space:
mode:
authorCornelia Huck <cornelia.huck@de.ibm.com>2013-01-29 16:33:04 +0100
committerAlexander Graf <agraf@suse.de>2013-01-29 21:50:05 +0100
commit19380b1bf587fd962a60fb40cc4927ba999cf17b (patch)
tree0c97705a9bd1da3c796c10c273aa8ac3e8aefd0e /hw/s390x
parent8d034a6fad4c580be3ed4a15f24e0bf47aa92d15 (diff)
s390: Drop set_bit usage in virtio_ccw.
set_bit on indicators doesn't go well on 32 bit targets: note: expected 'long unsigned int *' but argument is of type 'uint64_t *' Switch to bit shifts instead. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> [agraf: use 1ULL instead] Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'hw/s390x')
-rw-r--r--hw/s390x/virtio-ccw.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c
index 7d7f33637f..231f81e48c 100644
--- a/hw/s390x/virtio-ccw.c
+++ b/hw/s390x/virtio-ccw.c
@@ -662,12 +662,12 @@ static void virtio_ccw_notify(DeviceState *d, uint16_t vector)
if (vector < VIRTIO_PCI_QUEUE_MAX) {
indicators = ldq_phys(dev->indicators);
- set_bit(vector, &indicators);
+ indicators |= 1ULL << vector;
stq_phys(dev->indicators, indicators);
} else {
vector = 0;
indicators = ldq_phys(dev->indicators2);
- set_bit(vector, &indicators);
+ indicators |= 1ULL << vector;
stq_phys(dev->indicators2, indicators);
}