On Mon, May 24, 2021, Jim Mattson wrote: > On Mon, May 24, 2021 at 4:24 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote: > > > > On Mon, May 24, 2021, Jim Mattson wrote: > > > On Mon, May 24, 2021 at 4:10 PM Sean Christopherson <seanjc@xxxxxxxxxx> wrote: > > > > > > > > On Mon, May 24, 2021, Paolo Bonzini wrote: > > > > > On 24/05/21 18:39, Jim Mattson wrote: > > > > > > Without this patch, the accompanying selftest never wakes up from HLT > > > > > > in L2. If you can get the selftest to work without this patch, feel > > > > > > free to drop it. > > > > > > > > > > Ok, that's a pretty good reason. I'll try to debug it. > > > > > > > > I don't think there's any debug necessary, the hack of unconditionally calling > > > > kvm_check_nested_events() in kvm_vcpu_running() ... > > > > > > We don't unconditionally call kvm_check_nested_events() in > > > kvm_vcpu_running(). We still call kvm_check_nested_events() only when > > > is_guest_mode(vcpu). The only change introduced in this patch is that > > > we stop ignoring the result. > > > > Doh, sorry, bad use of "unconditionally". I meant "unconditionally when in L2". :-) > > Again, the conditions under which we call kvm_check_nested_events are > unchanged. The only "hack" here is the hack of not ignoring the return > value. I don't disagree, all I'm saying is that the existing code is a hack, and this doesn't fix/cleanse that hack. I agree that this patch is a good intermediate change.