Index: arch/amd64/include/asm.h
===================================================================
--- arch/amd64/include/asm.h	(revision 2d01bbdac368338c32d0749e74b5fea2340a22b7)
+++ arch/amd64/include/asm.h	(revision 6463264c6b46958123756382d03683d5db2d7cb4)
@@ -248,5 +248,5 @@
 static inline void invlpg(__address addr)
 {
-        __asm__ volatile ("invlpg %0\n" :: "m" (addr));
+        __asm__ volatile ("invlpg %0\n" :: "m" (*((__native *)addr)));
 }
 
Index: arch/ia32/include/asm.h
===================================================================
--- arch/ia32/include/asm.h	(revision 2d01bbdac368338c32d0749e74b5fea2340a22b7)
+++ arch/ia32/include/asm.h	(revision 6463264c6b46958123756382d03683d5db2d7cb4)
@@ -242,5 +242,5 @@
 static inline void invlpg(__address addr)
 {
-	__asm__ volatile ("invlpg %0\n" :: "m" (addr));
+	__asm__ volatile ("invlpg %0\n" :: "m" (*(__native *)addr));
 }
 
