summaryrefslogtreecommitdiffstats
path: root/Documentation/x86/tlb.txt
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@amacapital.net>2014-11-11 21:49:41 +0100
committerAndy Lutomirski <luto@amacapital.net>2015-01-02 19:22:45 +0100
commit48e08d0fb265b007ebbb29a72297ff7e40938969 (patch)
tree424a8207cc53c2b0dfbd9fb12bee15952ce822ae /Documentation/x86/tlb.txt
parentrcu: Make rcu_nmi_enter() handle nesting (diff)
downloadlinux-48e08d0fb265b007ebbb29a72297ff7e40938969.tar.xz
linux-48e08d0fb265b007ebbb29a72297ff7e40938969.zip
x86, entry: Switch stacks on a paranoid entry from userspace
This causes all non-NMI, non-double-fault kernel entries from userspace to run on the normal kernel stack. Double-fault is exempt to minimize confusion if we double-fault directly from userspace due to a bad kernel stack. This is, suprisingly, simpler and shorter than the current code. It removes the IMO rather frightening paranoid_userspace path, and it make sync_regs much simpler. There is no risk of stack overflow due to this change -- the kernel stack that we switch to is empty. This will also enable us to create non-atomic sections within machine checks from userspace, which will simplify memory failure handling. It will also allow the upcoming fsgsbase code to be simplified, because it doesn't need to worry about usergs when scheduling in paranoid_exit, as that code no longer exists. Cc: Oleg Nesterov <oleg@redhat.com> Cc: Andi Kleen <andi@firstfloor.org> Cc: Tony Luck <tony.luck@intel.com> Acked-by: Borislav Petkov <bp@alien8.de> Signed-off-by: Andy Lutomirski <luto@amacapital.net>
Diffstat (limited to 'Documentation/x86/tlb.txt')
0 files changed, 0 insertions, 0 deletions