aboutsummaryrefslogtreecommitdiffstats
path: root/arch/s390/kvm/kvm-s390.c
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2014-08-25 06:38:57 -0400
committerChristian Borntraeger <borntraeger@de.ibm.com>2014-09-10 06:19:15 -0400
commit0349985add77ef5c9da8a75f4a9855977f4197d9 (patch)
tree894cfe46f69bc12a3fe773a5c41c640374e4dc20 /arch/s390/kvm/kvm-s390.c
parent614aeab4dcd0aafb1538d5035eb9855f15b84014 (diff)
KVM: s390: Limit guest size to 16TB
Currently we fill up a full 5 level page table to hold the guest mapping. Since commit "support gmap page tables with less than 5 levels" we can do better. Having more than 4 TB might be useful for some testing scenarios, so let's just limit ourselves to 16TB guest size. Having more than that is totally untested as I do not have enough swap space/memory. We continue to allow ucontrol the full size. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kvm/kvm-s390.c')
-rw-r--r--arch/s390/kvm/kvm-s390.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/kvm/kvm-s390.c b/arch/s390/kvm/kvm-s390.c
index 2037738d01a0..b95d4a481b0c 100644
--- a/arch/s390/kvm/kvm-s390.c
+++ b/arch/s390/kvm/kvm-s390.c
@@ -458,7 +458,7 @@ int kvm_arch_init_vm(struct kvm *kvm, unsigned long type)
458 if (type & KVM_VM_S390_UCONTROL) { 458 if (type & KVM_VM_S390_UCONTROL) {
459 kvm->arch.gmap = NULL; 459 kvm->arch.gmap = NULL;
460 } else { 460 } else {
461 kvm->arch.gmap = gmap_alloc(current->mm, -1UL); 461 kvm->arch.gmap = gmap_alloc(current->mm, (1UL << 44) - 1);
462 if (!kvm->arch.gmap) 462 if (!kvm->arch.gmap)
463 goto out_nogmap; 463 goto out_nogmap;
464 kvm->arch.gmap->private = kvm; 464 kvm->arch.gmap->private = kvm;