Messages in this thread | | | From | Andy Lutomirski <> | Subject | [PATCH 0/7] Misc GDT fixes and a cleanup | Date | Wed, 22 Mar 2017 14:32:28 -0700 |
| |
Hi all-
This applies to tip:x86/mm. For ease of testing, the series is here, too:
https://git.kernel.org/pub/scm/linux/kernel/git/luto/linux.git/tag/?h=review_20170322_gdt_and_wp
This fixes a few issues, most of which appear to be rather old. For whatever reason, Thomas' GDT series unearthed them. (And one is a genuine bug in Thomas' code but, in his defense, he might have cut-and-pasted it verbatim from the identical bug in the EFI code.)
The last three patches are cleanups I did while tracking these down.
Boris, any chance you could test this series on Xen? The 64-bit case works for me, but I'm having issues testing on 32-bit right now.
Ingo, the first patch should address your concerns from the earlier version.
Andy Lutomirski (7): selftests/x86/ldt_gdt_32: Work around a glibc sigaction bug x86/gdt: Fix setup_fixmap_gdt() to use the correct PA x86/efi/32: Fix EFI on systems where the percpu GDT is virtually mapped x86/boot/32: Defer resyncing initial_page_table until percpu is set up x86/gdt: Get rid of the get_*_gdt_*_vaddr() helpers x86/xen/gdt: Use X86_FEATURE_XENPV instead of globals for the GDT fixup x86/boot/32: Rewrite test_wp_bit()
arch/x86/include/asm/desc.h | 21 +++------------- arch/x86/include/asm/processor.h | 2 -- arch/x86/kernel/cpu/common.c | 28 ++++++++++++--------- arch/x86/kernel/cpu/proc.c | 5 ++-- arch/x86/kernel/setup.c | 17 ------------- arch/x86/kernel/setup_percpu.c | 21 ++++++++++++++++ arch/x86/kvm/vmx.c | 4 +-- arch/x86/mm/init_32.c | 44 +++++++-------------------------- arch/x86/platform/efi/efi_32.c | 2 +- arch/x86/xen/enlighten.c | 4 --- tools/testing/selftests/x86/ldt_gdt.c | 46 +++++++++++++++++++++++++++++++++++ 11 files changed, 101 insertions(+), 93 deletions(-)
-- 2.9.3
| |