summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Hildenbrand2017-04-07 10:50:36 +0200
committerRadim Krčmář2017-04-12 20:17:14 +0200
commite21d1758b0377c9b1351d76fb36ecd34ca72880d (patch)
treeb9bfa0092c613180ab57e19c8c40265abc6c4132
parentKVM: x86: cleanup return handling in setup_routing_entry() (diff)
downloadkernel-qcow2-linux-e21d1758b0377c9b1351d76fb36ecd34ca72880d.tar.gz
kernel-qcow2-linux-e21d1758b0377c9b1351d76fb36ecd34ca72880d.tar.xz
kernel-qcow2-linux-e21d1758b0377c9b1351d76fb36ecd34ca72880d.zip
KVM: x86: simplify pic_unlock()
We can easily compact this code and get rid of one local variable. Reviewed-by: Peter Xu <peterx@redhat.com> Signed-off-by: David Hildenbrand <david@redhat.com> Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
-rw-r--r--arch/x86/kvm/i8259.c13
1 files changed, 4 insertions, 9 deletions
diff --git a/arch/x86/kvm/i8259.c b/arch/x86/kvm/i8259.c
index 2da2b429edcd..fce571c667c6 100644
--- a/arch/x86/kvm/i8259.c
+++ b/arch/x86/kvm/i8259.c
@@ -49,7 +49,7 @@ static void pic_unlock(struct kvm_pic *s)
__releases(&s->lock)
{
bool wakeup = s->wakeup_needed;
- struct kvm_vcpu *vcpu, *found = NULL;
+ struct kvm_vcpu *vcpu;
int i;
s->wakeup_needed = false;
@@ -59,16 +59,11 @@ static void pic_unlock(struct kvm_pic *s)
if (wakeup) {
kvm_for_each_vcpu(i, vcpu, s->kvm) {
if (kvm_apic_accept_pic_intr(vcpu)) {
- found = vcpu;
- break;
+ kvm_make_request(KVM_REQ_EVENT, vcpu);
+ kvm_vcpu_kick(vcpu);
+ return;
}
}
-
- if (!found)
- return;
-
- kvm_make_request(KVM_REQ_EVENT, found);
- kvm_vcpu_kick(found);
}
}