[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions.
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions. |
Date: |
Tue, 29 Jan 2013 20:12:21 +0000 |
On Tue, Jan 29, 2013 at 3:45 PM, Cornelia Huck <address@hidden> wrote:
> On Tue, 29 Jan 2013 16:09:38 +0100
> Alexander Graf <address@hidden> wrote:
>
>> On 01/28/2013 10:59 AM, Cornelia Huck wrote:
>> > On Fri, 25 Jan 2013 20:28:31 +0100
>> > Alexander Graf<address@hidden> wrote:
>> >
>> >> However, I do agree that this duplicates logic. Cornelia, mind to instead
>> >> call our map helper in css_do_tpi?
>> > Well, ioinst_handle_tpi() looks like the better place to do this.
>> >
>> > Can you put this into the series, or should I re-send?
>>
>> It still breaks for 32-bit targets. Could you please replace the set_bit
>> call by normal bit shift operations?
>>
>
> Here you are:
>
> From f85a2507c4c5887e308dcd7dfcfebc386d802ea5 Mon Sep 17 00:00:00 2001
> From: Cornelia Huck <address@hidden>
> Date: Tue, 29 Jan 2013 16:33:04 +0100
> Subject: [PATCH] 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 <address@hidden>
> ---
> 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..77e8f32 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 |= 1 << vector;
Probably 1ULL should be used to avoid truncation on 32 bit hosts.
> stq_phys(dev->indicators, indicators);
> } else {
> vector = 0;
> indicators = ldq_phys(dev->indicators2);
> - set_bit(vector, &indicators);
> + indicators |= 1 << vector;
> stq_phys(dev->indicators2, indicators);
> }
>
> --
> 1.7.6.2
>
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., (continued)
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Andreas Färber, 2013/01/26
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Blue Swirl, 2013/01/26
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Cornelia Huck, 2013/01/28
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Alexander Graf, 2013/01/28
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Alexander Graf, 2013/01/29
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Cornelia Huck, 2013/01/29
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions.,
Blue Swirl <=
- Re: [Qemu-devel] [PATCH 06/15] s390: Add channel I/O instructions., Alexander Graf, 2013/01/29
[Qemu-devel] [PATCH 10/15] s390: Add new channel I/O based virtio transport., Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 14/15] s390-virtio: Check for NULL device in reset hypercall, Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 11/15] s390: Make typeinfo const, Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 08/15] s390: Wire up channel I/O in kvm., Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 12/15] virtio-s390: add a reset function to virtio-s390 devices, Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 07/15] s390: Virtual channel subsystem support., Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 09/15] s390-virtio: Factor out some initialization code., Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 13/15] s390: Move hw files to hw/s390x, Alexander Graf, 2013/01/25
[Qemu-devel] [PATCH 15/15] s390: Add s390-ccw-virtio machine., Alexander Graf, 2013/01/25