aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2014-05-21 13:22:59 -0400
committerH. Peter Anvin <hpa@zytor.com>2014-05-21 13:22:59 -0400
commit7ed6fb9b5a5510e4ef78ab27419184741169978a (patch)
tree74783205baebe3bf34b13551565235f1ab8e3454
parent172de656b98efd81399aec83837dccaa276622c4 (diff)
Revert "x86-64, modify_ldt: Make support for 16-bit segments a runtime option"
This reverts commit fa81511bb0bbb2b1aace3695ce869da9762624ff in preparation of merging in the proper fix (espfix64). Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r--arch/x86/kernel/ldt.c4
-rw-r--r--arch/x86/vdso/vdso32-setup.c8
2 files changed, 1 insertions, 11 deletions
diff --git a/arch/x86/kernel/ldt.c b/arch/x86/kernel/ldt.c
index dcbbaa165bde..af1d14a9ebda 100644
--- a/arch/x86/kernel/ldt.c
+++ b/arch/x86/kernel/ldt.c
@@ -20,8 +20,6 @@
20#include <asm/mmu_context.h> 20#include <asm/mmu_context.h>
21#include <asm/syscalls.h> 21#include <asm/syscalls.h>
22 22
23int sysctl_ldt16 = 0;
24
25#ifdef CONFIG_SMP 23#ifdef CONFIG_SMP
26static void flush_ldt(void *current_mm) 24static void flush_ldt(void *current_mm)
27{ 25{
@@ -236,7 +234,7 @@ static int write_ldt(void __user *ptr, unsigned long bytecount, int oldmode)
236 * IRET leaking the high bits of the kernel stack address. 234 * IRET leaking the high bits of the kernel stack address.
237 */ 235 */
238#ifdef CONFIG_X86_64 236#ifdef CONFIG_X86_64
239 if (!ldt_info.seg_32bit && !sysctl_ldt16) { 237 if (!ldt_info.seg_32bit) {
240 error = -EINVAL; 238 error = -EINVAL;
241 goto out_unlock; 239 goto out_unlock;
242 } 240 }
diff --git a/arch/x86/vdso/vdso32-setup.c b/arch/x86/vdso/vdso32-setup.c
index e1f220e3ca68..00348980a3a6 100644
--- a/arch/x86/vdso/vdso32-setup.c
+++ b/arch/x86/vdso/vdso32-setup.c
@@ -39,7 +39,6 @@
39#ifdef CONFIG_X86_64 39#ifdef CONFIG_X86_64
40#define vdso_enabled sysctl_vsyscall32 40#define vdso_enabled sysctl_vsyscall32
41#define arch_setup_additional_pages syscall32_setup_pages 41#define arch_setup_additional_pages syscall32_setup_pages
42extern int sysctl_ldt16;
43#endif 42#endif
44 43
45/* 44/*
@@ -250,13 +249,6 @@ static struct ctl_table abi_table2[] = {
250 .mode = 0644, 249 .mode = 0644,
251 .proc_handler = proc_dointvec 250 .proc_handler = proc_dointvec
252 }, 251 },
253 {
254 .procname = "ldt16",
255 .data = &sysctl_ldt16,
256 .maxlen = sizeof(int),
257 .mode = 0644,
258 .proc_handler = proc_dointvec
259 },
260 {} 252 {}
261}; 253};
262 254