[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3 3/5] KVM: Pass EventNotifier into kvm_irqchip_assign_irqfd
From: |
Alex Williamson |
Subject: |
Re: [PATCH v3 3/5] KVM: Pass EventNotifier into kvm_irqchip_assign_irqfd |
Date: |
Tue, 17 Mar 2020 16:58:05 -0600 |
On Tue, 17 Mar 2020 15:50:40 -0400
Peter Xu <address@hidden> wrote:
> So that kvm_irqchip_assign_irqfd() can have access to the
> EventNotifiers, especially the resample event. It is needed in follow
> up patch to cache and kick resamplefds from QEMU.
>
> Reviewed-by: Eric Auger <address@hidden>
> Signed-off-by: Peter Xu <address@hidden>
> ---
> accel/kvm/kvm-all.c | 16 ++++++++++------
> 1 file changed, 10 insertions(+), 6 deletions(-)
Reviewed-by: Alex Williamson <address@hidden>
> diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c
> index 439a4efe52..d49b74512a 100644
> --- a/accel/kvm/kvm-all.c
> +++ b/accel/kvm/kvm-all.c
> @@ -1628,9 +1628,13 @@ int kvm_irqchip_update_msi_route(KVMState *s, int
> virq, MSIMessage msg,
> return kvm_update_routing_entry(s, &kroute);
> }
>
> -static int kvm_irqchip_assign_irqfd(KVMState *s, int fd, int rfd, int virq,
> +static int kvm_irqchip_assign_irqfd(KVMState *s, EventNotifier *event,
> + EventNotifier *resample, int virq,
> bool assign)
> {
> + int fd = event_notifier_get_fd(event);
> + int rfd = resample ? event_notifier_get_fd(resample) : -1;
> +
> struct kvm_irqfd irqfd = {
> .fd = fd,
> .gsi = virq,
> @@ -1735,7 +1739,9 @@ int kvm_irqchip_add_hv_sint_route(KVMState *s, uint32_t
> vcpu, uint32_t sint)
> return -ENOSYS;
> }
>
> -static int kvm_irqchip_assign_irqfd(KVMState *s, int fd, int virq, bool
> assign)
> +static int kvm_irqchip_assign_irqfd(KVMState *s, EventNotifier *event,
> + EventNotifier *resample, int virq,
> + bool assign)
> {
> abort();
> }
> @@ -1749,15 +1755,13 @@ int kvm_irqchip_update_msi_route(KVMState *s, int
> virq, MSIMessage msg)
> int kvm_irqchip_add_irqfd_notifier_gsi(KVMState *s, EventNotifier *n,
> EventNotifier *rn, int virq)
> {
> - return kvm_irqchip_assign_irqfd(s, event_notifier_get_fd(n),
> - rn ? event_notifier_get_fd(rn) : -1, virq, true);
> + return kvm_irqchip_assign_irqfd(s, n, rn, virq, true);
> }
>
> int kvm_irqchip_remove_irqfd_notifier_gsi(KVMState *s, EventNotifier *n,
> int virq)
> {
> - return kvm_irqchip_assign_irqfd(s, event_notifier_get_fd(n), -1, virq,
> - false);
> + return kvm_irqchip_assign_irqfd(s, n, NULL, virq, false);
> }
>
> int kvm_irqchip_add_irqfd_notifier(KVMState *s, EventNotifier *n,
[PATCH v3 5/5] Revert "vfio/pci: Disable INTx fast path if using split irqchip", Peter Xu, 2020/03/17
Re: [PATCH v3 0/5] vfio/pci: Fix up breakage against split irqchip and INTx, no-reply, 2020/03/17