[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] virtio-ccw: fix build breakage on windows
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH] virtio-ccw: fix build breakage on windows |
Date: |
Fri, 28 Jun 2013 09:55:49 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6 |
Il 28/06/2013 09:47, Cornelia Huck ha scritto:
> event_notifier_get_fd() is not available on windows hosts. Fix this by
> moving the calls to event_notifier_get_fd() to the kvm code.
>
> Reported-by: Stefan Weil <address@hidden>
> Signed-off-by: Cornelia Huck <address@hidden>
> ---
> hw/s390x/virtio-ccw.c | 6 ++----
> target-s390x/cpu.h | 11 +++++++----
> target-s390x/kvm.c | 5 +++--
> 3 files changed, 12 insertions(+), 10 deletions(-)
>
> diff --git a/hw/s390x/virtio-ccw.c b/hw/s390x/virtio-ccw.c
> index faef5dd..e744957 100644
> --- a/hw/s390x/virtio-ccw.c
> +++ b/hw/s390x/virtio-ccw.c
> @@ -79,8 +79,7 @@ static int
> virtio_ccw_set_guest2host_notifier(VirtioCcwDevice *dev, int n,
> return r;
> }
> virtio_queue_set_host_notifier_fd_handler(vq, true, set_handler);
> - r = s390_assign_subch_ioeventfd(event_notifier_get_fd(notifier),
> sch_id,
> - n, assign);
> + r = s390_assign_subch_ioeventfd(notifier, sch_id, n, assign);
> if (r < 0) {
> error_report("%s: unable to assign ioeventfd: %d", __func__, r);
> virtio_queue_set_host_notifier_fd_handler(vq, false, false);
> @@ -89,8 +88,7 @@ static int
> virtio_ccw_set_guest2host_notifier(VirtioCcwDevice *dev, int n,
> }
> } else {
> virtio_queue_set_host_notifier_fd_handler(vq, false, false);
> - s390_assign_subch_ioeventfd(event_notifier_get_fd(notifier), sch_id,
> - n, assign);
> + s390_assign_subch_ioeventfd(notifier, sch_id, n, assign);
> event_notifier_cleanup(notifier);
> }
> return r;
> diff --git a/target-s390x/cpu.h b/target-s390x/cpu.h
> index 918c819..741c4e4 100644
> --- a/target-s390x/cpu.h
> +++ b/target-s390x/cpu.h
> @@ -1081,7 +1081,8 @@ void kvm_s390_io_interrupt(S390CPU *cpu, uint16_t
> subchannel_id,
> void kvm_s390_crw_mchk(S390CPU *cpu);
> void kvm_s390_enable_css_support(S390CPU *cpu);
> int kvm_s390_get_registers_partial(CPUState *cpu);
> -int kvm_s390_assign_subch_ioeventfd(int fd, uint32_t sch, int vq, bool
> assign);
> +int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch,
> + int vq, bool assign);
> #else
> static inline void kvm_s390_io_interrupt(S390CPU *cpu,
> uint16_t subchannel_id,
> @@ -1100,7 +1101,8 @@ static inline int
> kvm_s390_get_registers_partial(CPUState *cpu)
> {
> return -ENOSYS;
> }
> -static inline int kvm_s390_assign_subch_ioeventfd(int fd, uint32_t sch, int
> vq,
> +static inline int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier,
> + uint32_t sch, int vq,
> bool assign)
> {
> return -ENOSYS;
> @@ -1131,11 +1133,12 @@ static inline void s390_crw_mchk(S390CPU *cpu)
> }
> }
>
> -static inline int s390_assign_subch_ioeventfd(int fd, uint32_t sch_id, int
> vq,
> +static inline int s390_assign_subch_ioeventfd(EventNotifier *notifier,
> + uint32_t sch_id, int vq,
> bool assign)
> {
> if (kvm_enabled()) {
> - return kvm_s390_assign_subch_ioeventfd(fd, sch_id, vq, assign);
> + return kvm_s390_assign_subch_ioeventfd(notifier, sch_id, vq, assign);
> } else {
> return -ENOSYS;
> }
> diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
> index 650d3a5..d8e5c6f 100644
> --- a/target-s390x/kvm.c
> +++ b/target-s390x/kvm.c
> @@ -933,12 +933,13 @@ void kvm_arch_init_irq_routing(KVMState *s)
> {
> }
>
> -int kvm_s390_assign_subch_ioeventfd(int fd, uint32_t sch, int vq, bool
> assign)
> +int kvm_s390_assign_subch_ioeventfd(EventNotifier *notifier, uint32_t sch,
> + int vq, bool assign)
> {
> struct kvm_ioeventfd kick = {
> .flags = KVM_IOEVENTFD_FLAG_VIRTIO_CCW_NOTIFY |
> KVM_IOEVENTFD_FLAG_DATAMATCH,
> - .fd = fd,
> + .fd = event_notifier_get_fd(notifier),
> .datamatch = vq,
> .addr = sch,
> .len = 8,
>
Reviewed-by: Paolo Bonzini <address@hidden>
[Qemu-devel] [PULL 3/3] virtio-ccw: Wire up guest and host notifies., Cornelia Huck, 2013/06/25