Re: [PATCH v2 35/43] KVM: SVM: Signal AVIC doorbell iff vCPU is in guest mode
Paolo Bonzini <[email protected]>
| Newsgroups | org.kernel.vger.kvm-ppc,dev.linux.lists.kvmarm,org.infradead.lists.kvm-riscv,org.infradead.lists.linux-arm-kernel,org.infradead.lists.linux-riscv,org.kernel.vger.kvm,org.kernel.vger.linux-kernel,org.kernel.vger.linux-mips |
|---|---|
| Message-ID | <[email protected]> |
On 27/10/21 18:08, Sean Christopherson wrote:
>> Right, so should we drop the "if (running)" check in this patch, at the same
>> time as it's adding the IN_GUEST_MODE check?
> LOL, I think we have a Three^WTwo Stooges routine going on. This patch does
> remove avic_vcpu_is_running() and replaces it with the vcpu->mode check. Or am
> I completely misunderstanding what your referring to?
>
> - if (avic_vcpu_is_running(vcpu)) {
> + /*
> + * Signal the doorbell to tell hardware to inject the IRQ if the vCPU
> + * is in the guest. If the vCPU is not in the guest, hardware will
> + * automatically process AVIC interrupts at VMRUN.
> + */
> + if (vcpu->mode = IN_GUEST_MODE) {
> int cpu = READ_ONCE(vcpu->cpu);
Nevermind, I confused svm_deliver_avic_intr with avic_kick_target_vcpus,
which anyway you are handling in patch 36.
Paolo