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

Re: [Xen-devel] [PATCH] x86/ats: Disable Address Translation Services by default



>>> On 20.08.14 at 18:01, <andrew.cooper3@xxxxxxxxxx> wrote:
> Xen cannot safely use any ATS functionality until it gains asynchronous 
> queued
> invalidation support, because of the current synchronous wait for 
> completion.
> 
> Do not turn ATS on by default.
> 
> While editing the default in the command line documentation, correct the
> statement regarding PCI Passthrough.  ATS is purely a performance
> optimisation, and is certainly not required for PCI Passthrough to function.
> 
> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> CC: Jan Beulich <JBeulich@xxxxxxxx>

Even if not mandated by ./MAINTAINERS I think this definitely
should have been Cc-ed to the VT-d and AMD IOMMU maintainers
(now done).

Jan

> ---
>  docs/misc/xen-command-line.markdown |    9 ++++++---
>  xen/drivers/passthrough/x86/ats.c   |    2 +-
>  2 files changed, 7 insertions(+), 4 deletions(-)
> 
> diff --git a/docs/misc/xen-command-line.markdown 
> b/docs/misc/xen-command-line.markdown
> index a8cab59..5f4680f 100644
> --- a/docs/misc/xen-command-line.markdown
> +++ b/docs/misc/xen-command-line.markdown
> @@ -176,10 +176,13 @@ developers wishing Xen to fall back to older timing 
> methods on newer hardware.
>  ### ats
>  > `= <boolean>`
>  
> -> Default: `true`
> +> Default: `false`
> +
> +Permits Xen to set up and use PCI Address Translation Services.  This is a
> +performance optimisation for PCI Passthrough.
>  
> -Permits Xen to set up and use PCI Address Translation Services, which
> -is required for PCI Passthrough.
> +**WARNING: Xen cannot currently safely use ATS because of its synchronous 
> wait
> +loops for Queued Invalidation completions.**
>  
>  ### availmem
>  > `= <size>`
> diff --git a/xen/drivers/passthrough/x86/ats.c 
> b/xen/drivers/passthrough/x86/ats.c
> index 1e3e03a..436eada 100644
> --- a/xen/drivers/passthrough/x86/ats.c
> +++ b/xen/drivers/passthrough/x86/ats.c
> @@ -20,7 +20,7 @@
>  
>  LIST_HEAD(ats_devices);
>  
> -bool_t __read_mostly ats_enabled = 1;
> +bool_t __read_mostly ats_enabled = 0;
>  boolean_param("ats", ats_enabled);
>  
>  int enable_ats_device(int seg, int bus, int devfn, const void *iommu)
> -- 
> 1.7.10.4




_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.