On 7/13/26 11:52 AM, Claudio Imbrenda wrote:
> 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;

Just double-checking -- If you successfully take the 2G path here you
will still set cap_hpage_1m = 1;

I suspect it's intentional to fence diag 308?  But then IMO

s/kvm_s390_get_hpage_1m/kvm_s390_get_hpage/
and
s/ cap_hpage_1m/ cap_hpage_any/
or something like that

Reply via email to