diff options
author | David Hildenbrand <david@redhat.com> | 2017-04-07 04:50:36 -0400 |
---|---|---|
committer | Radim Krčmář <rkrcmar@redhat.com> | 2017-04-12 14:17:14 -0400 |
commit | e21d1758b0377c9b1351d76fb36ecd34ca72880d (patch) | |
tree | b9bfa0092c613180ab57e19c8c40265abc6c4132 | |
parent | 8c6b7828c24a69416bcb639d5760c6eaa351fdf9 (diff) |
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.c | 13 |
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) | |||
49 | __releases(&s->lock) | 49 | __releases(&s->lock) |
50 | { | 50 | { |
51 | bool wakeup = s->wakeup_needed; | 51 | bool wakeup = s->wakeup_needed; |
52 | struct kvm_vcpu *vcpu, *found = NULL; | 52 | struct kvm_vcpu *vcpu; |
53 | int i; | 53 | int i; |
54 | 54 | ||
55 | s->wakeup_needed = false; | 55 | s->wakeup_needed = false; |
@@ -59,16 +59,11 @@ static void pic_unlock(struct kvm_pic *s) | |||
59 | if (wakeup) { | 59 | if (wakeup) { |
60 | kvm_for_each_vcpu(i, vcpu, s->kvm) { | 60 | kvm_for_each_vcpu(i, vcpu, s->kvm) { |
61 | if (kvm_apic_accept_pic_intr(vcpu)) { | 61 | if (kvm_apic_accept_pic_intr(vcpu)) { |
62 | found = vcpu; | 62 | kvm_make_request(KVM_REQ_EVENT, vcpu); |
63 | break; | 63 | kvm_vcpu_kick(vcpu); |
64 | return; | ||
64 | } | 65 | } |
65 | } | 66 | } |
66 | |||
67 | if (!found) | ||
68 | return; | ||
69 | |||
70 | kvm_make_request(KVM_REQ_EVENT, found); | ||
71 | kvm_vcpu_kick(found); | ||
72 | } | 67 | } |
73 | } | 68 | } |
74 | 69 | ||