x86/entry/32: Fix FS and GS restore in opportunistic SYSEXIT
authorAndy Lutomirski <luto@kernel.org>
Fri, 16 Oct 2015 22:42:55 +0000 (15:42 -0700)
committerIngo Molnar <mingo@kernel.org>
Sun, 18 Oct 2015 10:11:16 +0000 (12:11 +0200)
commit3bd29515d1cad26fa85a1a9b442de8816c1f5c54
tree89bc78824c420dafce56d7056571fa11384b03b8
parent657c1eea0019e80685a84cbb1919794243a187c9
x86/entry/32: Fix FS and GS restore in opportunistic SYSEXIT

We either need to restore them before popping and thus changing
ESP, or we need to adjust the offsets.  The former is simpler.

Reported-and-tested-by: Borislav Petkov <bp@suse.de>
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>
Fixes: 5f310f739b4c x86/entry/32: ("Re-implement SYSENTER using the new C path")
Link: http://lkml.kernel.org/r/461e5c7d8fa3821529893a4893ac9c4bc37f9e17.1445035014.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/entry/entry_32.S