]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
x86/asm: Remove thread_info.sysenter_return
authorAndy Lutomirski <luto@kernel.org>
Tue, 6 Oct 2015 00:48:16 +0000 (17:48 -0700)
committerIngo Molnar <mingo@kernel.org>
Fri, 9 Oct 2015 07:41:11 +0000 (09:41 +0200)
It's no longer needed.

We could reinstate something like it as an optimization, which
would remove two cachelines from the fast syscall entry working
set.  I benchmarked it, and it makes no difference whatsoever to
the performance of cache-hot compat syscalls on Sandy Bridge.

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/f08cc0cff30201afe9bb565c47134c0a6c1a96a2.1444091585.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/include/asm/thread_info.h
arch/x86/kernel/asm-offsets.c

index 8afdc3e44247c3a53cc5513ddb0d8f2f84340a4c..a1ecd214d2279e49ba9bd9d0c8e8d62536142fba 100644 (file)
@@ -59,7 +59,6 @@ struct thread_info {
        __u32                   cpu;            /* current CPU */
        int                     saved_preempt_count;
        mm_segment_t            addr_limit;
-       void __user             *sysenter_return;
        unsigned int            sig_on_uaccess_error:1;
        unsigned int            uaccess_err:1;  /* uaccess failed */
 };
index 8e3d22a1af94094b749abca95187b073403d628c..95a18e25d5bfc5ce14f9e930eef09389c336c8d6 100644 (file)
@@ -53,9 +53,6 @@ void common(void) {
        OFFSET(IA32_SIGCONTEXT_sp, sigcontext_ia32, sp);
        OFFSET(IA32_SIGCONTEXT_ip, sigcontext_ia32, ip);
 
-       BLANK();
-       OFFSET(TI_sysenter_return, thread_info, sysenter_return);
-
        BLANK();
        OFFSET(IA32_RT_SIGFRAME_sigcontext, rt_sigframe_ia32, uc.uc_mcontext);
 #endif