diff options
author | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2009-10-27 16:54:19 -0700 |
---|---|---|
committer | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2009-10-27 16:54:19 -0700 |
commit | 973df35ed9ff7806403e793a2ad7e9bd4c2fd2a9 (patch) | |
tree | cba250b11a7f732906b1142e5a03f81e6fd6f186 /arch/x86/xen/enlighten.c | |
parent | 964fe080d94db82a3268443e9b9ece4c60246414 (diff) | |
download | kernel-crypto-973df35ed9ff7806403e793a2ad7e9bd4c2fd2a9.tar.gz kernel-crypto-973df35ed9ff7806403e793a2ad7e9bd4c2fd2a9.tar.xz kernel-crypto-973df35ed9ff7806403e793a2ad7e9bd4c2fd2a9.zip |
xen: set up mmu_ops before trying to set any ptes
xen_setup_stackprotector() ends up trying to set page protections,
so we need to have vm_mmu_ops set up before trying to do so.
Failing to do so causes an early boot crash.
[ Impact: Fix early crash under Xen. ]
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'arch/x86/xen/enlighten.c')
-rw-r--r-- | arch/x86/xen/enlighten.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c index 3439616d69f..23a4d80fb39 100644 --- a/arch/x86/xen/enlighten.c +++ b/arch/x86/xen/enlighten.c @@ -1075,6 +1075,8 @@ asmlinkage void __init xen_start_kernel(void) * Set up some pagetable state before starting to set any ptes. */ + xen_init_mmu_ops(); + /* Prevent unwanted bits from being set in PTEs. */ __supported_pte_mask &= ~_PAGE_GLOBAL; if (!xen_initial_domain()) @@ -1099,7 +1101,6 @@ asmlinkage void __init xen_start_kernel(void) */ xen_setup_stackprotector(); - xen_init_mmu_ops(); xen_init_irq_ops(); xen_init_cpuid_mask(); |