On 4/27/20 8:54 PM, Sean Christopherson wrote:
Drop KVM's PT_{PAGE_TABLE,DIRECTORY,PDPE}_LEVEL KVM enums in favor of the kernel's PG_LEVEL_{4K,2M,1G} enums, which have far more user friendly names.
thanks for doing this - it fell off my radar. all 3: Reviewed-by: Barret Rhoden <brho@xxxxxxxxxx>
The KVM names were presumably intended to abstract away the page size. In practice, the abstraction is only useful for a single line of code, a PSE paging related large page check. For everything else, the abstract names do nothing but obfuscate the code. Boot tested a PSE kernel under 32-bit KVM and 64-bit KVM, with and without EPT enabled. Patches 2 and 3 generate no binary difference relative to patch 1 when compared via "objdump -d". Sean Christopherson (3): KVM: x86/mmu: Tweak PSE hugepage handling to avoid 2M vs 4M conundrum KVM: x86/mmu: Move max hugepage level to a separate #define KVM: x86/mmu: Drop KVM's hugepage enums in favor of the kernel's enums arch/x86/include/asm/kvm_host.h | 13 +--- arch/x86/kvm/mmu/mmu.c | 118 +++++++++++++++----------------- arch/x86/kvm/mmu/page_track.c | 4 +- arch/x86/kvm/mmu/paging_tmpl.h | 18 ++--- arch/x86/kvm/mmu_audit.c | 6 +- arch/x86/kvm/svm/svm.c | 2 +- arch/x86/kvm/vmx/vmx.c | 6 +- arch/x86/kvm/x86.c | 4 +- 8 files changed, 79 insertions(+), 92 deletions(-)