qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH 5/5] intel_iommu: turn on IR by default


From: Peter Xu
Subject: Re: [Qemu-devel] [PATCH 5/5] intel_iommu: turn on IR by default
Date: Tue, 18 Dec 2018 11:07:13 +0800
User-agent: Mutt/1.10.1 (2018-07-13)

On Mon, Dec 17, 2018 at 03:31:14PM +0800, Peter Xu wrote:
> IR has been there for a long time and long time no bug reported.
> Let's turn it on by default to match general hardwares.  Providing
> compatibility bit for QEMU<=3.1.
> 
> Signed-off-by: Peter Xu <address@hidden>

I forgot that IR will depend on split kernel irqchip and by default
that's still "on" so "-M q35 -device intel-iommu" may not be able to
boot correctly with all the default values and instead QEMU will ask
user to turn on split irqchip.

Paolo/Michael, do you think it would make any sense to turn the
default kernel-irqchip machine parameter to split starting from qemu
4.0?  Since AFAIU it should have little degradation to performance but
at the same time it reduces kvm attack serface, which seems good.

Thanks,

> ---
>  hw/i386/x86-iommu.c  | 2 +-
>  include/hw/i386/pc.h | 4 ++++
>  2 files changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/i386/x86-iommu.c b/hw/i386/x86-iommu.c
> index abc3c03158..0150ceda14 100644
> --- a/hw/i386/x86-iommu.c
> +++ b/hw/i386/x86-iommu.c
> @@ -135,7 +135,7 @@ static void x86_iommu_realize(DeviceState *dev, Error 
> **errp)
>  }
>  
>  static Property x86_iommu_properties[] = {
> -    DEFINE_PROP_BOOL("intremap", X86IOMMUState, intr_supported, false),
> +    DEFINE_PROP_BOOL("intremap", X86IOMMUState, intr_supported, true),
>      DEFINE_PROP_BOOL("device-iotlb", X86IOMMUState, dt_supported, false),
>      DEFINE_PROP_BOOL("pt", X86IOMMUState, pt_supported, true),
>      DEFINE_PROP_END_OF_LIST(),
> diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
> index c7c0c944e8..ed958b9af1 100644
> --- a/include/hw/i386/pc.h
> +++ b/include/hw/i386/pc.h
> @@ -300,6 +300,10 @@ bool e820_get_entry(int, uint32_t, uint64_t *, uint64_t 
> *);
>          .driver   = "intel-iommu",\
>          .property = "dma-drain",\
>          .value    = "off",\
> +    },{\
> +        .driver   = "x86-iommu",\
> +        .property = "intremap",\
> +        .value    = "off",\
>      },
>  
>  #define PC_COMPAT_3_0 \
> -- 
> 2.17.1
> 

Regards,

-- 
Peter Xu



reply via email to

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