diff options
Diffstat (limited to 'arch/x86/kvm/lapic.h')
-rw-r--r-- | arch/x86/kvm/lapic.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/kvm/lapic.h b/arch/x86/kvm/lapic.h index 6f4ce2575d09..4af5405ae1e2 100644 --- a/arch/x86/kvm/lapic.h +++ b/arch/x86/kvm/lapic.h | |||
@@ -13,6 +13,15 @@ struct kvm_lapic { | |||
13 | u32 divide_count; | 13 | u32 divide_count; |
14 | struct kvm_vcpu *vcpu; | 14 | struct kvm_vcpu *vcpu; |
15 | bool irr_pending; | 15 | bool irr_pending; |
16 | /* Number of bits set in ISR. */ | ||
17 | s16 isr_count; | ||
18 | /* The highest vector set in ISR; if -1 - invalid, must scan ISR. */ | ||
19 | int highest_isr_cache; | ||
20 | /** | ||
21 | * APIC register page. The layout matches the register layout seen by | ||
22 | * the guest 1:1, because it is accessed by the vmx microcode. | ||
23 | * Note: Only one register, the TPR, is used by the microcode. | ||
24 | */ | ||
16 | void *regs; | 25 | void *regs; |
17 | gpa_t vapic_addr; | 26 | gpa_t vapic_addr; |
18 | struct page *vapic_page; | 27 | struct page *vapic_page; |
@@ -60,4 +69,6 @@ static inline bool kvm_hv_vapic_assist_page_enabled(struct kvm_vcpu *vcpu) | |||
60 | { | 69 | { |
61 | return vcpu->arch.hv_vapic & HV_X64_MSR_APIC_ASSIST_PAGE_ENABLE; | 70 | return vcpu->arch.hv_vapic & HV_X64_MSR_APIC_ASSIST_PAGE_ENABLE; |
62 | } | 71 | } |
72 | |||
73 | int kvm_lapic_enable_pv_eoi(struct kvm_vcpu *vcpu, u64 data); | ||
63 | #endif | 74 | #endif |