diff options
author | Gleb Natapov <gleb@redhat.com> | 2009-05-11 13:35:48 +0300 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2009-06-10 11:48:57 +0300 |
commit | 923c61bbc6413e87e5f6b0bae663d202a8de0537 (patch) | |
tree | a4ae8262a60f343bedb29f06be8510a21ef11dc8 /arch/x86/kvm/x86.h | |
parent | fa9726b0733461781933ab7180aca45e46d0a891 (diff) | |
download | op-kernel-dev-923c61bbc6413e87e5f6b0bae663d202a8de0537.zip op-kernel-dev-923c61bbc6413e87e5f6b0bae663d202a8de0537.tar.gz |
KVM: Remove irq_pending bitmap
Only one interrupt vector can be injected from userspace irqchip at
any given time so no need to store it in a bitmap. Put it into interrupt
queue directly.
Signed-off-by: Gleb Natapov <gleb@redhat.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm/x86.h')
-rw-r--r-- | arch/x86/kvm/x86.h | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/arch/x86/kvm/x86.h b/arch/x86/kvm/x86.h index 21203d4..c1f1a8c 100644 --- a/arch/x86/kvm/x86.h +++ b/arch/x86/kvm/x86.h @@ -19,18 +19,6 @@ static inline void kvm_clear_interrupt_queue(struct kvm_vcpu *vcpu) vcpu->arch.interrupt.pending = false; } -static inline u8 kvm_pop_irq(struct kvm_vcpu *vcpu) -{ - int word_index = __ffs(vcpu->arch.irq_summary); - int bit_index = __ffs(vcpu->arch.irq_pending[word_index]); - int irq = word_index * BITS_PER_LONG + bit_index; - - clear_bit(bit_index, &vcpu->arch.irq_pending[word_index]); - if (!vcpu->arch.irq_pending[word_index]) - clear_bit(word_index, &vcpu->arch.irq_summary); - return irq; -} - static inline bool kvm_event_needs_reinjection(struct kvm_vcpu *vcpu) { return vcpu->arch.exception.pending || vcpu->arch.interrupt.pending || |