summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Duyck <alexander.h.duyck@intel.com>2012-11-16 22:58:12 +0100
committerH. Peter Anvin <hpa@linux.intel.com>2012-11-17 03:11:45 +0100
commit6a3956bd242926f8956992f6ed7805b0811be003 (patch)
tree17573ed080c4f4d42a64bd7899fdff8897ed7ae5
parentx86/acpi: Use __pa_symbol instead of __pa on C visible symbols (diff)
downloadlinux-6a3956bd242926f8956992f6ed7805b0811be003.tar.xz
linux-6a3956bd242926f8956992f6ed7805b0811be003.zip
x86/lguest: Use __pa_symbol instead of __pa on C visible symbols
The function lguest_write_cr3 is using __pa to convert swapper_pg_dir and initial_page_table from virtual addresses to physical. The correct function to use for these values is __pa_symbol since they are C visible symbols. Cc: Rusty Russell <rusty@rustcorp.com.au> Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com> Link: http://lkml.kernel.org/r/20121116215748.8521.83556.stgit@ahduyck-cp1.jf.intel.com Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
-rw-r--r--arch/x86/lguest/boot.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c
index 642d8805bc1b..139dd353c2f2 100644
--- a/arch/x86/lguest/boot.c
+++ b/arch/x86/lguest/boot.c
@@ -552,7 +552,8 @@ static void lguest_write_cr3(unsigned long cr3)
current_cr3 = cr3;
/* These two page tables are simple, linear, and used during boot */
- if (cr3 != __pa(swapper_pg_dir) && cr3 != __pa(initial_page_table))
+ if (cr3 != __pa_symbol(swapper_pg_dir) &&
+ cr3 != __pa_symbol(initial_page_table))
cr3_changed = true;
}