qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 1/2] KVM_CAP_IRQFD and KVM_CAP_IRQFD_RESAMPLE


From: Christian Borntraeger
Subject: Re: [Qemu-devel] [PATCH v2 1/2] KVM_CAP_IRQFD and KVM_CAP_IRQFD_RESAMPLE checks
Date: Wed, 03 Sep 2014 14:50:06 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:31.0) Gecko/20100101 Thunderbird/31.0

On 03/09/14 11:54, Eric Auger wrote:
[...]
> --- a/kvm-all.c
> +++ b/kvm-all.c
[...]
> @@ -1548,6 +1549,12 @@ int kvm_init(MachineClass *mc)
>      kvm_eventfds_allowed =
>          (kvm_check_extension(s, KVM_CAP_IOEVENTFD) > 0);
> 
> +    kvm_irqfds_allowed =
> +        (kvm_check_extension(s, KVM_CAP_IRQFD) > 0);
                                   ^^^^^^^^^^^^^
> +
> +    kvm_resamplefds_allowed =
> +        (kvm_check_extension(s, KVM_CAP_IRQFD_RESAMPLE) > 0);
> +
[...]

> diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
> index a85a480..f937568 100644
> --- a/target-s390x/kvm.c
> +++ b/target-s390x/kvm.c
> @@ -1290,7 +1290,6 @@ void kvm_arch_init_irq_routing(KVMState *s)
>       * have to override the common code kvm_halt_in_kernel_allowed setting.
>       */
>      if (kvm_check_extension(s, KVM_CAP_IRQ_ROUTING)) {
                                  ^^^^^^^^^^^^^^^^^^^
> -        kvm_irqfds_allowed = true;
>          kvm_gsi_routing_allowed = true;
>          kvm_halt_in_kernel_allowed = false;
>      }



I first thought that this is wrong, because on s390 we forgot to announce IRQFD 
when we introduced
it. As you can see in both hunks, we check for KVM_CAP_IRQ_ROUTING and not for 
CAP_IRQFD

Luckily, the kernel got fixed with commit 
ebc3226202d5956a5963185222982d435378b899
("KVM: s390: announce irqfd capability") and the capability was introduced with 
commit 84223598778ba08041f4297fda485df83414d57e ("KVM: s390: irq routing for 
adapter interrupts").
Looks that both patches first appear with 3.15, so there should be no kernel 
version that
is affected by this change. You might want to add that to your changelog to 
help distros that
84223598778ba08041f4297fda485df83414d57e also needs 
ebc3226202d5956a5963185222982d435378b899.



Christian




reply via email to

[Prev in Thread] Current Thread [Next in Thread]