From: Cornelia Huck <cornelia.h...@de.ibm.com> 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.h...@de.ibm.com> [agraf: use 1ULL instead] Signed-off-by: Alexander Graf <ag...@suse.de> --- hw/s390x/virtio-ccw.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c index 7d7f336..231f81e 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); } -- 1.6.0.2