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

Re: [Xen-devel] [PATCH 08/10] xen: arm: allow virt_to_maddr to take either a pointer or an integer



On Tue, 18 Jun 2013, Ian Campbell wrote:
> This seems to be expected by common code which passes both pointers and
> unsigned long as virtual addresses. The latter case in particular is in
> init_node_heap() under a DIRECTMAP_VIRT_END #ifdef, which is why it hasn't
> affected us yet (but weill in a subsequent patch).
                         ^

> The new prototypes match the x86 versions apart from using vaddr_t instead of
> unsigned long.
> 
> Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

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


>  xen/include/asm-arm/mm.h |    7 ++++---
>  1 files changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/xen/include/asm-arm/mm.h b/xen/include/asm-arm/mm.h
> index baaf9c3..7aca836 100644
> --- a/xen/include/asm-arm/mm.h
> +++ b/xen/include/asm-arm/mm.h
> @@ -208,11 +208,12 @@ static inline void __iomem *ioremap_wc(paddr_t start, 
> size_t len)
>  #define paddr_to_pdx(pa)    pfn_to_pdx(paddr_to_pfn(pa))
>  
>  
> -static inline paddr_t virt_to_maddr(const void *va)
> +static inline paddr_t __virt_to_maddr(vaddr_t va)
>  {
> -    uint64_t par = va_to_par((vaddr_t)va);
> -    return (par & PADDR_MASK & PAGE_MASK) | ((vaddr_t) va & ~PAGE_MASK);
> +    uint64_t par = va_to_par(va);
> +    return (par & PADDR_MASK & PAGE_MASK) | (va & ~PAGE_MASK);
>  }
> +#define virt_to_maddr(va)   __virt_to_maddr((vaddr_t)(va))
>  
>  static inline void *maddr_to_virt(paddr_t ma)
>  {
> -- 
> 1.7.2.5
> 

_______________________________________________
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®.