KVM: Add a pending interrupt queue
Similar to the exception queue, this hold interrupts that have been accepted by the virtual processor core but not yet injected. Not yet used. Signed-off-by: Avi Kivity <avi@qumranet.com>
This commit is contained in:
parent
35920a3569
commit
937a7eaef9
@ -8,4 +8,15 @@ static inline void kvm_clear_exception_queue(struct kvm_vcpu *vcpu)
|
|||||||
vcpu->arch.exception.pending = false;
|
vcpu->arch.exception.pending = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void kvm_queue_interrupt(struct kvm_vcpu *vcpu, u8 vector)
|
||||||
|
{
|
||||||
|
vcpu->arch.interrupt.pending = true;
|
||||||
|
vcpu->arch.interrupt.nr = vector;
|
||||||
|
}
|
||||||
|
|
||||||
|
static inline void kvm_clear_interrupt_queue(struct kvm_vcpu *vcpu)
|
||||||
|
{
|
||||||
|
vcpu->arch.interrupt.pending = false;
|
||||||
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -275,6 +275,11 @@ struct kvm_vcpu_arch {
|
|||||||
u32 error_code;
|
u32 error_code;
|
||||||
} exception;
|
} exception;
|
||||||
|
|
||||||
|
struct kvm_queued_interrupt {
|
||||||
|
bool pending;
|
||||||
|
u8 nr;
|
||||||
|
} interrupt;
|
||||||
|
|
||||||
struct {
|
struct {
|
||||||
int active;
|
int active;
|
||||||
u8 save_iopl;
|
u8 save_iopl;
|
||||||
|
Loading…
Reference in New Issue
Block a user