[PATCH 03/15] KVM: selftests: Align HVA for HugeTLB-backed memslots

From: Sean Christopherson
Date: Wed Feb 10 2021 - 18:08:42 EST


Align the HVA for HugeTLB memslots, not just THP memslots. Add an
assert so any future backing types are forced to assess whether or not
they need to be aligned.

Cc: Ben Gardon <bgardon@xxxxxxxxxx>
Cc: Yanan Wang <wangyanan55@xxxxxxxxxx>
Cc: Andrew Jones <drjones@xxxxxxxxxx>
Cc: Peter Xu <peterx@xxxxxxxxxx>
Cc: Aaron Lewis <aaronlewis@xxxxxxxxxx>
Signed-off-by: Sean Christopherson <seanjc@xxxxxxxxxx>
---
tools/testing/selftests/kvm/lib/kvm_util.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/kvm/lib/kvm_util.c b/tools/testing/selftests/kvm/lib/kvm_util.c
index 584167c6dbc7..deaeb47b5a6d 100644
--- a/tools/testing/selftests/kvm/lib/kvm_util.c
+++ b/tools/testing/selftests/kvm/lib/kvm_util.c
@@ -731,8 +731,11 @@ void vm_userspace_mem_region_add(struct kvm_vm *vm,
alignment = 1;
#endif

- if (src_type == VM_MEM_SRC_ANONYMOUS_THP)
+ if (src_type == VM_MEM_SRC_ANONYMOUS_THP ||
+ src_type == VM_MEM_SRC_ANONYMOUS_HUGETLB)
alignment = max(huge_page_size, alignment);
+ else
+ ASSERT_EQ(src_type, VM_MEM_SRC_ANONYMOUS);

/* Add enough memory to align up if necessary */
if (alignment > 1)
--
2.30.0.478.g8a0d178c01-goog