• J
    x86/boot: Fix the end of the stack for idle tasks · 22dc3918
    Josh Poimboeuf 提交于
    Thanks to all the recent x86 entry code refactoring, most tasks' kernel
    stacks start at the same offset right below their saved pt_regs,
    regardless of which syscall was used to enter the kernel.  That creates
    a nice convention which makes it straightforward to identify the end of
    the stack, which can be useful for the unwinder to verify the stack is
    sane.
    
    However, the boot CPU's idle "swapper" task doesn't follow that
    convention.  Fix that by starting its stack at a sizeof(pt_regs) offset
    from the end of the stack page.
    Signed-off-by: NJosh Poimboeuf <jpoimboe@redhat.com>
    Cc: Andy Lutomirski <luto@kernel.org>
    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: Nilay Vaish <nilayvaish@gmail.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Link: http://lkml.kernel.org/r/81aee3beb6ed88e44f1bea6986bb7b65c368f77a.1474480779.git.jpoimboe@redhat.comSigned-off-by: NIngo Molnar <mingo@kernel.org>
    22dc3918
head_32.S 18.5 KB