Allow mapping guest with 2G hugepages on hosts that support it.

Signed-off-by: Claudio Imbrenda <[email protected]>
---
 target/s390x/kvm/kvm.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/target/s390x/kvm/kvm.c b/target/s390x/kvm/kvm.c
index 72031a5714..23fa714b69 100644
--- a/target/s390x/kvm/kvm.c
+++ b/target/s390x/kvm/kvm.c
@@ -298,13 +298,13 @@ void kvm_s390_set_max_pagesize(uint64_t pagesize, Error 
**errp)
         return;
     }
 
-    if (pagesize != 1 * MiB) {
+    if ((pagesize == 2 * GiB) &&
+        kvm_vm_enable_cap(kvm_state, KVM_CAP_S390_HPAGE_2G, 0)) {
         error_setg(errp, "Memory backing with 2G pages was specified, "
                    "but KVM does not support this memory backing");
         return;
-    }
-
-    if (kvm_vm_enable_cap(kvm_state, KVM_CAP_S390_HPAGE_1M, 0)) {
+    } else if ((pagesize == MiB) &&
+               kvm_vm_enable_cap(kvm_state, KVM_CAP_S390_HPAGE_1M, 0)) {
         error_setg(errp, "Memory backing with 1M pages was specified, "
                    "but KVM does not support this memory backing");
         return;
-- 
2.55.0


Reply via email to