qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v3 1/9] kvm: remove hard dependency on pci


From: Thomas Huth
Subject: Re: [Qemu-devel] [PATCH v3 1/9] kvm: remove hard dependency on pci
Date: Wed, 26 Jul 2017 08:52:44 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.0

On 25.07.2017 17:33, Cornelia Huck wrote:
> The msi routing code in kvm calls some pci functions: provide
> some stubs to enable builds without pci.
> 
> Fixes: e1d4fb2de ("kvm-irqchip: x86: add msi route notify fn")
> Fixes: 767a554a0 ("kvm-all: Pass requester ID to MSI routing functions")
> Signed-off-by: Cornelia Huck <address@hidden>
> ---
>  hw/pci/pci-stub.c | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
> 
> diff --git a/hw/pci/pci-stub.c b/hw/pci/pci-stub.c
> index ecad664946..bc228ce91e 100644
> --- a/hw/pci/pci-stub.c
> +++ b/hw/pci/pci-stub.c
> @@ -23,6 +23,7 @@
>  #include "monitor/monitor.h"
>  #include "qapi/qmp/qerror.h"
>  #include "hw/pci/pci.h"
> +#include "hw/pci/msi.h"
>  #include "qmp-commands.h"
>  #include "hw/pci/msi.h"
>  
> @@ -38,3 +39,14 @@ void hmp_pcie_aer_inject_error(Monitor *mon, const QDict 
> *qdict)
>  {
>      monitor_printf(mon, "PCI devices not supported\n");
>  }
> +
> +/* kvm-all wants this */
> +MSIMessage pci_get_msi_message(PCIDevice *dev, int vector)
> +{
> +    assert(false);
> +}
> +
> +uint16_t pci_requester_id(PCIDevice *dev)
> +{
> +    assert(false);
> +}

Since this missed the 2.10 freeze anyway and we've got some more time to
discuss it: I still think it would be much cleaner to move the functions
from kvm-all.c that use these PCI functions into a separate file
kvm-pci.c instead and compile that only with CONFIG_PCI=y. That way we
likely also could prevent that more dependencies on CONFIG_PCI creep
into kvm-all.c again at later points in time.

I've now had a closer look, and it seems like the only affected
functions are kvm_irqchip_add_msi_route() and
kvm_irqchip_update_msi_route() ... and these seems only to be used in
code we would not care about on s390x with CONFIG_PCI=n. So could you
please have at least a try to move these two functions (and other
related msi functions) to a new file kvm-pci.c instead to see whether
that would work, too?

 Thanks,
  Thomas



reply via email to

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