Skip to content

Commit

Permalink
x86/entry/64/compat: Disable SYSENTER and SYSCALL32 entries
Browse files Browse the repository at this point in the history
We've disabled the vDSO helpers to call them, so turn off the
entries entirely (temporarily) in preparation for cleaning them
up.

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Brian Gerst <brgerst@gmail.com>
Cc: Denys Vlasenko <dvlasenk@redhat.com>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Link: http://lkml.kernel.org/r/8d6e84bf651519289dc532dcc230adfabbd2a3eb.1444091584.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
  • Loading branch information
Andy Lutomirski authored and Ingo Molnar committed Oct 9, 2015
1 parent 8242c6c commit e62a254
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions arch/x86/entry/entry_64_compat.S
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,14 @@ ENTRY(entry_SYSENTER_compat)
jnz sysenter_fix_flags
sysenter_flags_fixed:

/* Temporary: SYSENTER is disabled. */
#ifdef CONFIG_CONTEXT_TRACKING
call enter_from_user_mode
#endif
ENABLE_INTERRUPTS(CLBR_NONE)
movl $11, %edi
call do_exit

/*
* Re-enable interrupts. IRQ tracing already thinks that IRQs are
* on (since we treat user mode as having IRQs on), and the
Expand Down Expand Up @@ -324,6 +332,11 @@ ENTRY(entry_SYSCALL_compat)
* it is too small to ever cause noticeable irq latency.
*/
SWAPGS_UNSAFE_STACK

/* Temporary: SYSCALL32 is disabled. */
movl $-ENOSYS, %eax
USERGS_SYSRET32

movl %esp, %r8d
movq PER_CPU_VAR(cpu_current_top_of_stack), %rsp
ENABLE_INTERRUPTS(CLBR_NONE)
Expand Down

0 comments on commit e62a254

Please sign in to comment.