This patcheset is a preparation set for boot-time switching between paging modes. Please review and consider applying. Code around sme_populate_pgd() is unnecessary complex and hard to modify. This patchset rewrites it in more stream-lined way to add support of boot-time switching between paging modes. I haven't tested the patchset on hardware capable of memory encryption. v4: - Move sev_enabled declaration to <linux/mem_encrypt.h> - Fix few typos in commit messages - Reviewed/Tested-by from Tom v3: - Move all page table related functions into mem_encrypt_identity.c v2: - Rebased to up-to-date tip Kirill A. Shutemov (3): x86/mm/encrypt: Move page table helpers into separate translation unit x86/mm/encrypt: Rewrite sme_populate_pgd() and sme_populate_pgd_large() x86/mm/encrypt: Rewrite sme_pgtable_calc() arch/x86/include/asm/mem_encrypt.h | 1 + arch/x86/mm/Makefile | 14 +- arch/x86/mm/mem_encrypt.c | 578 +------------------------------------ arch/x86/mm/mem_encrypt_identity.c | 564 ++++++++++++++++++++++++++++++++++++ 4 files changed, 575 insertions(+), 582 deletions(-) create mode 100644 arch/x86/mm/mem_encrypt_identity.c -- 2.15.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>