Re: [PATCH v5 03/14] KVM: s390: pv: avoid stalls for kvm_s390_pv_init_vm

Janosch Frank
2021-10-05T13:20:18Z

On 9/20/21 15:24, Claudio Imbrenda wrote:
> When the system is heavily overcommitted, kvm_s390_pv_init_vm might
> generate stall notifications.
>
> Fix this by using uv_call_sched instead of just uv_call. This is ok because
> we are not holding spinlocks.
>
> Signed-off-by: Claudio Imbrenda <imbrenda@linux.ibm.com>
> Fixes: 214d9bbcd3a672 ("s390/mm: provide memory management functions for protected KVM guests")
> Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>

Reviewed-by: Janosch Frank <frankja@linux.ibm.com>
Oops :)

> ---
> arch/s390/kvm/pv.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/s390/kvm/pv.c b/arch/s390/kvm/pv.c
> index 0a854115100b..00d272d134c2 100644
> --- a/arch/s390/kvm/pv.c
> +++ b/arch/s390/kvm/pv.c
> @@ -195,7 +195,7 @@ int kvm_s390_pv_init_vm(struct kvm *kvm, u16 *rc, u16 *rrc)
> uvcb.conf_base_stor_origin = (u64)kvm->arch.pv.stor_base;
> uvcb.conf_virt_stor_origin = (u64)kvm->arch.pv.stor_var;
>
> - cc = uv_call(0, (u64)&uvcb);
> + cc = uv_call_sched(0, (u64)&uvcb);
> *rc = uvcb.header.rc;
> *rrc = uvcb.header.rrc;
> KVM_UV_EVENT(kvm, 3, "PROTVIRT CREATE VM: handle %llx len %llx rc %x rrc %x",
>