This is the last batch of patches that enable boot-time switching between paging modes.
The first patch allows two more Xen modes to be enabled with CONFIG_X86_5LEVEL=y. These modes don't support 5-level paging, but we can use them when boot into 4-level paging mode. The last two patches optimize switching between paging modes by using code pathching in all hot paths. Please review and cosider applying. Kirill A. Shutemov (3): x86/xen: Allow XEN_PV and XEN_PVH to be enabled with X86_5LEVEL x86/mm: Redefine some of page table helpers as macros x86/mm: Offset boot-time paging mode switching cost arch/x86/boot/compressed/misc.h | 5 +++++ arch/x86/entry/entry_64.S | 11 ++--------- arch/x86/include/asm/paravirt.h | 23 +++++++++++++---------- arch/x86/include/asm/pgtable_64_types.h | 5 ++++- arch/x86/kernel/head64.c | 9 +++++++-- arch/x86/kernel/head_64.S | 14 +++++++------- arch/x86/mm/kasan_init_64.c | 6 ++++++ arch/x86/xen/Kconfig | 5 ----- arch/x86/xen/mmu_pv.c | 21 +++++++++++++++++++++ 9 files changed, 65 insertions(+), 34 deletions(-) -- 2.15.1

