Commit d5303b81 authored by Jeremy Fitzhardinge's avatar Jeremy Fitzhardinge Committed by Ingo Molnar

x86: xen: no need to disable vdso32

Now that the vdso32 code can cope with both syscall and sysenter
missing for 32-bit compat processes, just disable the features without
disabling vdso altogether.
Signed-off-by: default avatarJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
parent 6a52e4b1
...@@ -137,7 +137,7 @@ void __cpuinit xen_enable_syscall(void) ...@@ -137,7 +137,7 @@ void __cpuinit xen_enable_syscall(void)
ret = register_callback(CALLBACKTYPE_syscall, xen_syscall_target); ret = register_callback(CALLBACKTYPE_syscall, xen_syscall_target);
if (ret != 0) { if (ret != 0) {
printk(KERN_ERR "Failed to set syscall: %d\n", ret); printk(KERN_ERR "Failed to set syscall callback: %d\n", ret);
/* Pretty fatal; 64-bit userspace has no other /* Pretty fatal; 64-bit userspace has no other
mechanism for syscalls. */ mechanism for syscalls. */
} }
...@@ -145,13 +145,8 @@ void __cpuinit xen_enable_syscall(void) ...@@ -145,13 +145,8 @@ void __cpuinit xen_enable_syscall(void)
if (boot_cpu_has(X86_FEATURE_SYSCALL32)) { if (boot_cpu_has(X86_FEATURE_SYSCALL32)) {
ret = register_callback(CALLBACKTYPE_syscall32, ret = register_callback(CALLBACKTYPE_syscall32,
xen_syscall32_target); xen_syscall32_target);
if (ret != 0) { if (ret != 0)
printk(KERN_INFO "Xen: 32-bit syscall not supported: disabling vdso\n");
setup_clear_cpu_cap(X86_FEATURE_SYSCALL32); setup_clear_cpu_cap(X86_FEATURE_SYSCALL32);
#ifdef CONFIG_COMPAT
sysctl_vsyscall32 = 0;
#endif
}
} }
#endif /* CONFIG_X86_64 */ #endif /* CONFIG_X86_64 */
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment