From: Julien Grall Date: Tue, 12 Sep 2017 10:03:07 +0000 (+0100) Subject: xen/x86: mm: Introduce {G, M}FN <-> {G, M}ADDR helpers X-Git-Tag: archive/raspbian/4.11.1-1+rpi1~1^2~66^2~1458 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=caa8d100b923f2abfb6ba54dbe20ab3f37f8bd91;p=xen.git xen/x86: mm: Introduce {G, M}FN <-> {G, M}ADDR helpers The new wrappers will add more safety when converting an address to a frame number (either machine or guest). They are already existing for Arm and could be useful in common code. Signed-off-by: Julien Grall Reviewed-by: Andrew Cooper Reviewed-by: Wei Liu --- diff --git a/xen/include/asm-x86/page.h b/xen/include/asm-x86/page.h index cde5c6b89b..45ca742678 100644 --- a/xen/include/asm-x86/page.h +++ b/xen/include/asm-x86/page.h @@ -250,6 +250,10 @@ void copy_page_sse2(void *, const void *); /* Convert between frame number and address formats. */ #define __pfn_to_paddr(pfn) ((paddr_t)(pfn) << PAGE_SHIFT) #define __paddr_to_pfn(pa) ((unsigned long)((pa) >> PAGE_SHIFT)) +#define gfn_to_gaddr(gfn) __pfn_to_paddr(gfn_x(gfn)) +#define gaddr_to_gfn(ga) _gfn(__paddr_to_pfn(ga)) +#define mfn_to_maddr(mfn) __pfn_to_paddr(mfn_x(mfn)) +#define maddr_to_mfn(ma) _mfn(__paddr_to_pfn(ma)) /* * We define non-underscored wrappers for above conversion functions. These are