diff options
author | Alexander Duyck <alexander.h.duyck@intel.com> | 2012-11-16 13:58:12 -0800 |
---|---|---|
committer | H. Peter Anvin <hpa@linux.intel.com> | 2012-11-16 18:11:45 -0800 |
commit | 6a3956bd242926f8956992f6ed7805b0811be003 (patch) | |
tree | 17573ed080c4f4d42a64bd7899fdff8897ed7ae5 /arch/x86/lguest | |
parent | afd51a0e32cd79261f0e823400886ed322a355ac (diff) | |
download | op-kernel-dev-6a3956bd242926f8956992f6ed7805b0811be003.zip op-kernel-dev-6a3956bd242926f8956992f6ed7805b0811be003.tar.gz |
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>
Diffstat (limited to 'arch/x86/lguest')
-rw-r--r-- | arch/x86/lguest/boot.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/lguest/boot.c b/arch/x86/lguest/boot.c index 642d880..139dd35 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; } |