提交 937a7eae 编写于 作者: A Avi Kivity

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: NAvi Kivity <avi@qumranet.com>
上级 35920a35
...@@ -8,4 +8,15 @@ static inline void kvm_clear_exception_queue(struct kvm_vcpu *vcpu) ...@@ -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 { ...@@ -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;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册