Messages in this thread | | | Subject | Re: [PATCH] KVM: SVM: Make sure GHCB is mapped before updating | From | Tom Lendacky <> | Date | Thu, 8 Apr 2021 11:18:43 -0500 |
| |
On 4/8/21 11:14 AM, Paolo Bonzini wrote: > On 08/04/21 18:04, Tom Lendacky wrote: >>>>> + if (!err || !sev_es_guest(vcpu->kvm) || >>>>> !WARN_ON_ONCE(svm->ghcb)) >>>> This should be WARN_ON_ONCE(!svm->ghcb), otherwise you'll get the right >>>> result, but get a stack trace immediately. >>> Doh, yep. >> Actually, because of the "or's", this needs to be: >> >> if (!err || !sev_es_guest(vcpu->kvm) || (sev_es_guest(vcpu->kvm) && >> WARN_ON_ONCE(!svm->ghcb))) > > No, || cuts the right-hand side if the left-hand side is true. So: > > - if err == 0, the rest is not evaluated > > - if !sev_es_guest(vcpu->kvm), WARN_ON_ONCE(!svm->ghcb) is not evaluated
That's what I was doing in my head, but I guess I need more coffee... :)
Thanks, Tom
> > Paolo >
| |