Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

x86/entry: Remove _TIF_NOHZ from _TIF_WORK_SYSCALL_ENTRY

Evaluating _TIF_NOHZ to decide whether to use the slow syscall entry path
is not only pointless, it's actually counterproductive:

1) Context tracking code is invoked unconditionally before that flag is
evaluated.

2) If the flag is set the slow path is invoked for nothing due to #1

Remove it.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Frederic Weisbecker <frederic@kernel.org>

authored by

Thomas Gleixner and committed by
Frederic Weisbecker
7c805795 bb6d3fb3

+2 -6
+2 -6
arch/x86/include/asm/thread_info.h
··· 133 133 #define _TIF_X32 (1 << TIF_X32) 134 134 #define _TIF_FSCHECK (1 << TIF_FSCHECK) 135 135 136 - /* 137 - * work to do in syscall_trace_enter(). Also includes TIF_NOHZ for 138 - * enter_from_user_mode() 139 - */ 136 + /* Work to do before invoking the actual syscall. */ 140 137 #define _TIF_WORK_SYSCALL_ENTRY \ 141 138 (_TIF_SYSCALL_TRACE | _TIF_SYSCALL_EMU | _TIF_SYSCALL_AUDIT | \ 142 - _TIF_SECCOMP | _TIF_SYSCALL_TRACEPOINT | \ 143 - _TIF_NOHZ) 139 + _TIF_SECCOMP | _TIF_SYSCALL_TRACEPOINT) 144 140 145 141 /* flags to check in __switch_to() */ 146 142 #define _TIF_WORK_CTXSW_BASE \