x86/entry: Only allocate space for tss_struct::SYSENTER_stack if needed
authorAndy Lutomirski <luto@kernel.org>
Thu, 10 Mar 2016 03:00:31 +0000 (19:00 -0800)
committerIngo Molnar <mingo@kernel.org>
Thu, 10 Mar 2016 08:48:14 +0000 (09:48 +0100)
The SYSENTER stack is only used on 32-bit kernels.  Remove it on 64-bit kernels.

( We may end up using it down the road on 64-bit kernels. If so,
  we'll re-enable it for CONFIG_IA32_EMULATION. )

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
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: Oleg Nesterov <oleg@redhat.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/9dbd18429f9ff61a76b6eda97a9ea20510b9f6ba.1457578375.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/include/asm/processor.h

index ecb410310e700513338e08010a6decf20d84de61..7cd01b71b5bdc8e7573edfecd9bda4fd0f542230 100644 (file)
@@ -297,10 +297,12 @@ struct tss_struct {
         */
        unsigned long           io_bitmap[IO_BITMAP_LONGS + 1];
 
+#ifdef CONFIG_X86_32
        /*
         * Space for the temporary SYSENTER stack:
         */
        unsigned long           SYSENTER_stack[64];
+#endif
 
 } ____cacheline_aligned;