diff options
| author | Andy Lutomirski <[email protected]> | 2019-11-24 16:50:03 +0000 |
|---|---|---|
| committer | Ingo Molnar <[email protected]> | 2019-11-25 08:36:47 +0000 |
| commit | 4a13b0e3e10996b9aa0b45a764ecfe49f6fcd360 (patch) | |
| tree | b7f1190c4712e52a4eeb867c98286f15da644845 /lib/test_printf.c | |
| parent | x86/pti/32: Calculate the various PTI cpu_entry_area sizes correctly, make th... (diff) | |
| download | kernel-4a13b0e3e10996b9aa0b45a764ecfe49f6fcd360.tar.gz kernel-4a13b0e3e10996b9aa0b45a764ecfe49f6fcd360.zip | |
x86/entry/32: Fix FIXUP_ESPFIX_STACK with user CR3
UNWIND_ESPFIX_STACK needs to read the GDT, and the GDT mapping that
can be accessed via %fs is not mapped in the user pagetables. Use
SGDT to find the cpu_entry_area mapping and read the espfix offset
from that instead.
Reported-and-tested-by: Borislav Petkov <[email protected]>
Signed-off-by: Andy Lutomirski <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Thomas Gleixner <[email protected]>
Cc: Linus Torvalds <[email protected]>
Cc: <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
Diffstat (limited to 'lib/test_printf.c')
0 files changed, 0 insertions, 0 deletions
