KVM: SVM: Handle multiple logical targets in AVIC kick fastpath
authorSean Christopherson <seanjc@google.com>
Fri, 6 Jan 2023 01:13:01 +0000 (01:13 +0000)
committerPaolo Bonzini <pbonzini@redhat.com>
Fri, 13 Jan 2023 15:45:33 +0000 (10:45 -0500)
commitbbfc7aa62a4a9baff264f1fd91175b6249843984
treeafc47f8782050309f2df9f5fdc86a71a89474f05
parent1808c950955dbbf8a0f83c96e720ec700863137e
KVM: SVM: Handle multiple logical targets in AVIC kick fastpath

Iterate over all target logical IDs in the AVIC kick fastpath instead of
bailing if there is more than one target.  Now that KVM inhibits AVIC if
vCPUs aren't mapped 1:1 with logical IDs, each bit in the destination is
guaranteed to match to at most one vCPU, i.e. iterating over the bitmap
is guaranteed to kick each valid target exactly once.

Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Message-Id: <20230106011306.85230-29-seanjc@google.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/avic.c