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

Re: [Xen-devel] [PATCH v2] xen: arm: clarify cacheability requirements of hypercall arguments.



On Wed, 18 Dec 2013, Ian Campbell wrote:
> Accepting hypercall arguments which are either consistently in cached or
> uncached is tricky and/or potentially slow, requiring a guest mapping lookup
> to determine whether/when to do a cache clean or invalidate.
> 
> There are very few reasons, and no current use cases in practice, for a guest
> to use uncached memory for their hypercall arguments. Therefore mandate that
> all hypercall arguments must be mapped inner-cacheable.
> 
> Do not place any restriction on the outer-cacheability or on the cache
> fill/flush strategy used.
> 
> If use cases arise then we can consider specific exemptions to this rule.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

Acked-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxxxxx>


> v2: Expliclty mention Outer-cacheability and cache allocation strategy.
> ---
>  xen/include/public/arch-arm.h |    5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
> index 475cb4a..ef6217d 100644
> --- a/xen/include/public/arch-arm.h
> +++ b/xen/include/public/arch-arm.h
> @@ -58,6 +58,11 @@
>   * (AAPCS64). Where there is a conflict the 64-bit standard should be
>   * used regardless of guest type. Structures which are passed as
>   * hypercall arguments are always little endian.
> + *
> + * All hypercall arguments passed via a pointer to guest memory must
> + * reside in memory which is mapped as Normal Inner-cacheable. Any
> + * Inner cache allocation strategy (Write-Back, Write-Through etc) is
> + * acceptable. There is no restriction on the Outer-cacheability.
>   */
>  
>  /*
> -- 
> 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®.