diff options
Diffstat (limited to 'arch/x86/vdso/vdso32-setup.c')
-rw-r--r-- | arch/x86/vdso/vdso32-setup.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/arch/x86/vdso/vdso32-setup.c b/arch/x86/vdso/vdso32-setup.c index cf058fecfcee..0bce5429a515 100644 --- a/arch/x86/vdso/vdso32-setup.c +++ b/arch/x86/vdso/vdso32-setup.c | |||
@@ -203,20 +203,11 @@ static struct page *vdso32_pages[1]; | |||
203 | 203 | ||
204 | #ifdef CONFIG_X86_64 | 204 | #ifdef CONFIG_X86_64 |
205 | 205 | ||
206 | static int use_sysenter __read_mostly = -1; | 206 | #define vdso32_sysenter() (boot_cpu_has(X86_FEATURE_SYSENTER32)) |
207 | |||
208 | #define vdso32_sysenter() (use_sysenter > 0) | ||
209 | 207 | ||
210 | /* May not be __init: called during resume */ | 208 | /* May not be __init: called during resume */ |
211 | void syscall32_cpu_init(void) | 209 | void syscall32_cpu_init(void) |
212 | { | 210 | { |
213 | if (use_sysenter < 0) { | ||
214 | if (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL) | ||
215 | use_sysenter = 1; | ||
216 | if (boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR) | ||
217 | use_sysenter = 1; | ||
218 | } | ||
219 | |||
220 | /* Load these always in case some future AMD CPU supports | 211 | /* Load these always in case some future AMD CPU supports |
221 | SYSENTER from compat mode too. */ | 212 | SYSENTER from compat mode too. */ |
222 | checking_wrmsrl(MSR_IA32_SYSENTER_CS, (u64)__KERNEL_CS); | 213 | checking_wrmsrl(MSR_IA32_SYSENTER_CS, (u64)__KERNEL_CS); |