diff options
author | David Hildenbrand <david@redhat.com> | 2024-12-19 15:41:12 +0100 |
---|---|---|
committer | David Hildenbrand <david@redhat.com> | 2024-12-21 15:59:59 +0100 |
commit | a056332e732110c8ef0d40ffd49bd03afc2f04ca (patch) | |
tree | 4d810a4c47d6eda1355bb4d8487baf9fa3f96541 | |
parent | 1e86400298cf0fed5f7d49427db477775b859093 (diff) | |
download | qemu-a056332e732110c8ef0d40ffd49bd03afc2f04ca.zip qemu-a056332e732110c8ef0d40ffd49bd03afc2f04ca.tar.gz qemu-a056332e732110c8ef0d40ffd49bd03afc2f04ca.tar.bz2 |
s390x/pv: prepare for memory devices
Let's avoid checking for the maxram_size, and instead rely on the memory
limit determined in s390_memory_init(), that might be larger than
maxram_size, for example due to alignment purposes.
This check now correctly mimics what the kernel will check in
kvm_s390_pv_set_aside(), whereby a VM <= 2 GiB VM would end up using
a segment type ASCE.
Message-ID: <20241219144115.2820241-12-david@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Nina Schoetterl-Glausch <nsg@linux.ibm.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
-rw-r--r-- | target/s390x/kvm/pv.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/target/s390x/kvm/pv.c b/target/s390x/kvm/pv.c index 424cce7..fa66607 100644 --- a/target/s390x/kvm/pv.c +++ b/target/s390x/kvm/pv.c @@ -133,7 +133,7 @@ bool s390_pv_vm_try_disable_async(S390CcwMachineState *ms) * If the feature is not present or if the VM is not larger than 2 GiB, * KVM_PV_ASYNC_CLEANUP_PREPARE fill fail; no point in attempting it. */ - if ((MACHINE(ms)->ram_size <= 2 * GiB) || + if (s390_get_memory_limit(ms) <= 2 * GiB || !kvm_check_extension(kvm_state, KVM_CAP_S390_PROTECTED_ASYNC_DISABLE)) { return false; } |