]> git.proxmox.com Git - mirror_qemu.git/commitdiff
s390/kvm: split kvm mem slots at 4TB
authorChristian Borntraeger <borntraeger@de.ibm.com>
Wed, 25 Sep 2019 07:45:50 +0000 (09:45 +0200)
committerChristian Borntraeger <borntraeger@de.ibm.com>
Mon, 30 Sep 2019 11:51:50 +0000 (13:51 +0200)
Instead of splitting at an unaligned address, we can simply split at
4TB.

Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Acked-by: Igor Mammedov <imammedo@redhat.com>
target/s390x/kvm.c

index 54864c259c5e9bbdc8c9708f9163a94afcd16c3a..c24c869e770347362eddfed34ad0746402979296 100644 (file)
 /*
  * KVM does only support memory slots up to KVM_MEM_MAX_NR_PAGES pages
  * as the dirty bitmap must be managed by bitops that take an int as
- * position indicator. If we have a guest beyond that we will split off
- * new subregions. The split must happen on a segment boundary (1MB).
+ * position indicator. This would end at an unaligned  address
+ * (0x7fffff00000). As future variants might provide larger pages
+ * and to make all addresses properly aligned, let us split at 4TB.
  */
-#define KVM_MEM_MAX_NR_PAGES ((1ULL << 31) - 1)
-#define SEG_MSK (~0xfffffULL)
-#define KVM_SLOT_MAX_BYTES ((KVM_MEM_MAX_NR_PAGES * TARGET_PAGE_SIZE) & SEG_MSK)
+#define KVM_SLOT_MAX_BYTES (4UL * TiB)
 
 static CPUWatchpoint hw_watchpoint;
 /*