s390/kvm: split kvm mem slots at 4TB

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>
This commit is contained in:
Christian Borntraeger 2019-09-25 09:45:50 +02:00
parent fb1fc5a82b
commit c5b9ce518c

View File

@ -126,12 +126,11 @@
/* /*
* KVM does only support memory slots up to KVM_MEM_MAX_NR_PAGES pages * 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 * 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 * position indicator. This would end at an unaligned address
* new subregions. The split must happen on a segment boundary (1MB). * (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 KVM_SLOT_MAX_BYTES (4UL * TiB)
#define SEG_MSK (~0xfffffULL)
#define KVM_SLOT_MAX_BYTES ((KVM_MEM_MAX_NR_PAGES * TARGET_PAGE_SIZE) & SEG_MSK)
static CPUWatchpoint hw_watchpoint; static CPUWatchpoint hw_watchpoint;
/* /*