[PATCH 0/3] x86/mm/encrypt: Simplify pgtable helpers

From: Kirill A. Shutemov
Date: Tue Dec 12 2017 - 06:47:31 EST


This patchset simplifies sme_populate_pgd(), sme_populate_pgd_large() and
sme_pgtable_calc() functions.

As a side effect, the patchset makes encryption code ready to boot-time
switching between paging modes.

The patchset is build on top of Tom's "x86: SME: BSP/SME microcode update
fix" patchset.

It was only build-tested. Tom, could you please get it tested properly?

Kirill A. Shutemov (3):
x86/mm/encrypt: Move sme_populate_pgd*() 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/mm/Makefile | 13 +--
arch/x86/mm/mem_encrypt.c | 169 ++++---------------------------------
arch/x86/mm/mem_encrypt_identity.c | 123 +++++++++++++++++++++++++++
arch/x86/mm/mm_internal.h | 4 +
4 files changed, 150 insertions(+), 159 deletions(-)
create mode 100644 arch/x86/mm/mem_encrypt_identity.c

--
2.15.0