aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/x86_64
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2009-03-31 11:21:14 +0100
committerKeir Fraser <keir.fraser@citrix.com>2009-03-31 11:21:14 +0100
commitda2c44502457ff12405934742363102bbc281602 (patch)
treeebbd7e0adb64b475a6f203a766362fa2977c22b2 /xen/include/asm-x86/x86_64
parentc8432f0b5929a6d77cc17cfbc754035c3d86ea1a (diff)
downloadxen-da2c44502457ff12405934742363102bbc281602.tar.gz
xen-da2c44502457ff12405934742363102bbc281602.tar.bz2
xen-da2c44502457ff12405934742363102bbc281602.zip
x86: virt_to_mfn() fixes.
Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
Diffstat (limited to 'xen/include/asm-x86/x86_64')
-rw-r--r--xen/include/asm-x86/x86_64/page.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/xen/include/asm-x86/x86_64/page.h b/xen/include/asm-x86/x86_64/page.h
index 8899fe777c..fcfb8eef57 100644
--- a/xen/include/asm-x86/x86_64/page.h
+++ b/xen/include/asm-x86/x86_64/page.h
@@ -46,8 +46,14 @@ static inline unsigned long __virt_to_maddr(unsigned long va)
}
#define virt_to_maddr(va) \
(__virt_to_maddr((unsigned long)(va)))
+
+static inline void *__maddr_to_virt(unsigned long ma)
+{
+ ASSERT(ma < DIRECTMAP_VIRT_END - DIRECTMAP_VIRT_START);
+ return (void *)(ma + DIRECTMAP_VIRT_START);
+}
#define maddr_to_virt(ma) \
- ((void *)((unsigned long)(ma)+DIRECTMAP_VIRT_START))
+ (__maddr_to_virt((unsigned long)(ma)))
/* read access (should only be used for debug printk's) */
typedef u64 intpte_t;