mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
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 <julien.grall@arm.com> Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Wei Liu <wei.liu2@citrix.com>
This commit is contained in:
1 parent
d0291f3391
commit
caa8d100b9
1 file changed
+4
@@ -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
|
||||
|
||||