From: "Cédric Le Goater" <clg@redhat.com>
To: "Philippe Mathieu-Daudé" <philmd@linaro.org>, qemu-devel@nongnu.org
Cc: "Alex Williamson" <alex.williamson@redhat.com>,
"Igor Mammedov" <imammedo@redhat.com>,
qemu-ppc@nongnu.org, "Thomas Huth" <thuth@redhat.com>,
"Richard Henderson" <richard.henderson@linaro.org>,
"Tony Krowiak" <akrowiak@linux.ibm.com>,
"Ilya Leoshkevich" <iii@linux.ibm.com>,
kvm@vger.kernel.org, "Yi Liu" <yi.l.liu@intel.com>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Zhenzhong Duan" <zhenzhong.duan@intel.com>,
"Matthew Rosato" <mjrosato@linux.ibm.com>,
"Eric Farman" <farman@linux.ibm.com>,
"Peter Xu" <peterx@redhat.com>,
"Pierrick Bouvier" <pierrick.bouvier@linaro.org>,
"Daniel Henrique Barboza" <danielhb413@gmail.com>,
"Eric Auger" <eric.auger@redhat.com>,
qemu-s390x@nongnu.org, "Jason Herne" <jjherne@linux.ibm.com>,
"David Hildenbrand" <david@redhat.com>,
"Alex Bennée" <alex.bennee@linaro.org>,
"Harsh Prateek Bora" <harshpb@linux.ibm.com>,
"Nicholas Piggin" <npiggin@gmail.com>,
"Halil Pasic" <pasic@linux.ibm.com>,
"Christian Borntraeger" <borntraeger@linux.ibm.com>
Subject: Re: [PATCH 09/14] hw/vfio/pci: Convert CONFIG_KVM check to runtime one
Date: Sat, 8 Mar 2025 18:46:51 +0100 [thread overview]
Message-ID: <ead04114-e666-4cd4-bb9b-2676e7becce2@redhat.com> (raw)
In-Reply-To: <20250307180337.14811-10-philmd@linaro.org>
On 3/7/25 19:03, Philippe Mathieu-Daudé wrote:
> Use the runtime kvm_enabled() helper to check whether
> KVM is available or not.
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Thanks,
C.
> ---
> hw/vfio/pci.c | 19 +++++++++----------
> 1 file changed, 9 insertions(+), 10 deletions(-)
>
> diff --git a/hw/vfio/pci.c b/hw/vfio/pci.c
> index fdbc15885d4..9872884ff8a 100644
> --- a/hw/vfio/pci.c
> +++ b/hw/vfio/pci.c
> @@ -118,8 +118,13 @@ static void vfio_intx_eoi(VFIODevice *vbasedev)
>
> static bool vfio_intx_enable_kvm(VFIOPCIDevice *vdev, Error **errp)
> {
> -#ifdef CONFIG_KVM
> - int irq_fd = event_notifier_get_fd(&vdev->intx.interrupt);
> + int irq_fd;
> +
> + if (!kvm_enabled()) {
> + return true;
> + }
> +
> + irq_fd = event_notifier_get_fd(&vdev->intx.interrupt);
>
> if (vdev->no_kvm_intx || !kvm_irqfds_enabled() ||
> vdev->intx.route.mode != PCI_INTX_ENABLED ||
> @@ -171,16 +176,13 @@ fail_irqfd:
> fail:
> qemu_set_fd_handler(irq_fd, vfio_intx_interrupt, NULL, vdev);
> vfio_unmask_single_irqindex(&vdev->vbasedev, VFIO_PCI_INTX_IRQ_INDEX);
> +
> return false;
> -#else
> - return true;
> -#endif
> }
>
> static void vfio_intx_disable_kvm(VFIOPCIDevice *vdev)
> {
> -#ifdef CONFIG_KVM
> - if (!vdev->intx.kvm_accel) {
> + if (!kvm_enabled() || !vdev->intx.kvm_accel) {
> return;
> }
>
> @@ -211,7 +213,6 @@ static void vfio_intx_disable_kvm(VFIOPCIDevice *vdev)
> vfio_unmask_single_irqindex(&vdev->vbasedev, VFIO_PCI_INTX_IRQ_INDEX);
>
> trace_vfio_intx_disable_kvm(vdev->vbasedev.name);
> -#endif
> }
>
> static void vfio_intx_update(VFIOPCIDevice *vdev, PCIINTxRoute *route)
> @@ -278,7 +279,6 @@ static bool vfio_intx_enable(VFIOPCIDevice *vdev, Error **errp)
> vdev->intx.pin = pin - 1; /* Pin A (1) -> irq[0] */
> pci_config_set_interrupt_pin(vdev->pdev.config, pin);
>
> -#ifdef CONFIG_KVM
> /*
> * Only conditional to avoid generating error messages on platforms
> * where we won't actually use the result anyway.
> @@ -287,7 +287,6 @@ static bool vfio_intx_enable(VFIOPCIDevice *vdev, Error **errp)
> vdev->intx.route = pci_device_route_intx_to_irq(&vdev->pdev,
> vdev->intx.pin);
> }
> -#endif
>
> ret = event_notifier_init(&vdev->intx.interrupt, 0);
> if (ret) {
next prev parent reply other threads:[~2025-03-08 17:46 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-07 18:03 [PATCH 00/14] hw/vfio: Build various objects once Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 01/14] hw/vfio/common: Include missing 'system/tcg.h' header Philippe Mathieu-Daudé
2025-03-07 19:14 ` Pierrick Bouvier
2025-03-07 19:35 ` Richard Henderson
2025-03-08 17:39 ` Cédric Le Goater
2025-03-07 18:03 ` [PATCH 02/14] hw/vfio/spapr: Do not include <linux/kvm.h> Philippe Mathieu-Daudé
2025-03-07 19:14 ` Pierrick Bouvier
2025-03-07 19:39 ` Richard Henderson
2025-03-08 17:39 ` Cédric Le Goater
2025-03-07 18:03 ` [PATCH 03/14] hw/vfio: Compile some common objects once Philippe Mathieu-Daudé
2025-03-07 19:15 ` Pierrick Bouvier
2025-03-07 19:40 ` Richard Henderson
2025-03-08 17:39 ` Cédric Le Goater
2025-03-07 18:03 ` [PATCH 04/14] hw/vfio: Compile more " Philippe Mathieu-Daudé
2025-03-07 19:15 ` Pierrick Bouvier
2025-03-07 19:40 ` Richard Henderson
2025-03-08 17:45 ` Cédric Le Goater
2025-03-07 18:03 ` [PATCH 05/14] hw/vfio: Compile iommufd.c once Philippe Mathieu-Daudé
2025-03-07 19:16 ` Pierrick Bouvier
2025-03-07 19:41 ` Richard Henderson
2025-03-08 17:45 ` Cédric Le Goater
2025-03-07 18:03 ` [PATCH 06/14] system: Declare qemu_[min/max]rampagesize() in 'system/hostmem.h' Philippe Mathieu-Daudé
2025-03-07 19:16 ` Pierrick Bouvier
2025-03-07 21:12 ` Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 07/14] hw/vfio: Compile display.c once Philippe Mathieu-Daudé
2025-03-07 19:17 ` Pierrick Bouvier
2025-03-07 19:42 ` Richard Henderson
2025-03-08 17:46 ` Cédric Le Goater
2025-03-07 18:03 ` [PATCH 08/14] system/kvm: Expose kvm_irqchip_[add,remove]_change_notifier() Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 08/14] system/kvm: Expose kvm_irqchip_[add, remove]_change_notifier() Philippe Mathieu-Daudé
2025-03-07 19:17 ` [PATCH 08/14] system/kvm: Expose kvm_irqchip_[add,remove]_change_notifier() Pierrick Bouvier
2025-03-07 20:09 ` Richard Henderson
2025-03-08 22:18 ` Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 09/14] hw/vfio/pci: Convert CONFIG_KVM check to runtime one Philippe Mathieu-Daudé
2025-03-07 19:18 ` Pierrick Bouvier
2025-03-07 20:11 ` Richard Henderson
2025-03-08 17:46 ` Cédric Le Goater [this message]
2025-03-07 18:03 ` [PATCH 10/14] system/iommufd: Introduce iommufd_builtin() helper Philippe Mathieu-Daudé
2025-03-07 19:18 ` Pierrick Bouvier
2025-03-07 20:33 ` Richard Henderson
2025-03-08 7:48 ` Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 11/14] hw/vfio/pci: Check CONFIG_IOMMUFD at runtime using iommufd_builtin() Philippe Mathieu-Daudé
2025-03-07 19:19 ` Pierrick Bouvier
2025-03-07 20:35 ` Richard Henderson
2025-03-07 18:03 ` [PATCH 12/14] hw/vfio/ap: " Philippe Mathieu-Daudé
2025-03-07 19:19 ` Pierrick Bouvier
2025-03-07 20:42 ` Richard Henderson
2025-03-07 21:08 ` Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 13/14] hw/vfio/ccw: " Philippe Mathieu-Daudé
2025-03-07 19:19 ` Pierrick Bouvier
2025-03-07 20:45 ` Richard Henderson
2025-03-07 21:09 ` Philippe Mathieu-Daudé
2025-03-07 18:03 ` [PATCH 14/14] hw/vfio/platform: Check CONFIG_IOMMUFD at runtime using iommufd_builtin Philippe Mathieu-Daudé
2025-03-07 19:20 ` Pierrick Bouvier
2025-03-07 20:48 ` Richard Henderson
2025-03-08 17:48 ` [PATCH 00/14] hw/vfio: Build various objects once Cédric Le Goater
2025-03-08 20:37 ` BALATON Zoltan
2025-03-08 22:31 ` Philippe Mathieu-Daudé
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ead04114-e666-4cd4-bb9b-2676e7becce2@redhat.com \
--to=clg@redhat.com \
--cc=akrowiak@linux.ibm.com \
--cc=alex.bennee@linaro.org \
--cc=alex.williamson@redhat.com \
--cc=borntraeger@linux.ibm.com \
--cc=danielhb413@gmail.com \
--cc=david@redhat.com \
--cc=eric.auger@redhat.com \
--cc=farman@linux.ibm.com \
--cc=harshpb@linux.ibm.com \
--cc=iii@linux.ibm.com \
--cc=imammedo@redhat.com \
--cc=jjherne@linux.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=mjrosato@linux.ibm.com \
--cc=npiggin@gmail.com \
--cc=pasic@linux.ibm.com \
--cc=pbonzini@redhat.com \
--cc=peterx@redhat.com \
--cc=philmd@linaro.org \
--cc=pierrick.bouvier@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=qemu-ppc@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=richard.henderson@linaro.org \
--cc=thuth@redhat.com \
--cc=yi.l.liu@intel.com \
--cc=zhenzhong.duan@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.