search for: deliver_posted_interrupt

Displaying 12 results from an estimated 12 matches for "deliver_posted_interrupt".

2015 Oct 09
0
[PATCH 1/2] kvm/x86: Hyper-V synthetic interrupt controller
...4:42:33PM +0200, Paolo Bonzini wrote: > You need to add SYNIC vectors to the EOI exit bitmap, so that APICv > (Xeon E5 or higher, Ivy Bridge or newer) is handled correctly. You also > need to check the auto EOI exit bitmap in __apic_accept_irq, and avoid > going through kvm_x86_ops->deliver_posted_interrupt for auto EOI > vectors. Something like > > if (kvm_x86_ops->deliver_posted_interrupt && > !test_bit(...)) > > in place of the existing "if (kvm_x86_ops->deliver_posted_interrupt)". Indeed, missed that path, thanks! > I really don't like th...
2015 Oct 09
4
[PATCH 1/2] kvm/x86: Hyper-V synthetic interrupt controller
...est(KVM_REQ_EVENT, apic->vcpu); > return vector; You need to add SYNIC vectors to the EOI exit bitmap, so that APICv (Xeon E5 or higher, Ivy Bridge or newer) is handled correctly. You also need to check the auto EOI exit bitmap in __apic_accept_irq, and avoid going through kvm_x86_ops->deliver_posted_interrupt for auto EOI vectors. Something like if (kvm_x86_ops->deliver_posted_interrupt && !test_bit(...)) in place of the existing "if (kvm_x86_ops->deliver_posted_interrupt)". I really don't like this auto-EOI extension, but I guess that's the spec. :( If it wasn&...
2015 Oct 09
4
[PATCH 1/2] kvm/x86: Hyper-V synthetic interrupt controller
...est(KVM_REQ_EVENT, apic->vcpu); > return vector; You need to add SYNIC vectors to the EOI exit bitmap, so that APICv (Xeon E5 or higher, Ivy Bridge or newer) is handled correctly. You also need to check the auto EOI exit bitmap in __apic_accept_irq, and avoid going through kvm_x86_ops->deliver_posted_interrupt for auto EOI vectors. Something like if (kvm_x86_ops->deliver_posted_interrupt && !test_bit(...)) in place of the existing "if (kvm_x86_ops->deliver_posted_interrupt)". I really don't like this auto-EOI extension, but I guess that's the spec. :( If it wasn&...
2015 Nov 02
1
[kvm-unit-tests PATCH] x86: hyperv_synic: Hyper-V SynIC test
...!enable_apicv: > > if (enable_apicv) > kvm_x86_ops->update_cr8_intercept = NULL; > else { > kvm_x86_ops->hwapic_irr_update = NULL; > kvm_x86_ops->hwapic_isr_update = NULL; > kvm_x86_ops->deliver_posted_interrupt = NULL; > kvm_x86_ops->sync_pir_to_irr = vmx_sync_pir_to_irr_dummy; > } > > The question then is... does Hyper-V actually use auto-EOI interrupts? > If it doesn't, we might as well not implement them... :/ > > I'm keeping the kernel patches qu...
2015 Nov 02
1
[kvm-unit-tests PATCH] x86: hyperv_synic: Hyper-V SynIC test
...!enable_apicv: > > if (enable_apicv) > kvm_x86_ops->update_cr8_intercept = NULL; > else { > kvm_x86_ops->hwapic_irr_update = NULL; > kvm_x86_ops->hwapic_isr_update = NULL; > kvm_x86_ops->deliver_posted_interrupt = NULL; > kvm_x86_ops->sync_pir_to_irr = vmx_sync_pir_to_irr_dummy; > } > > The question then is... does Hyper-V actually use auto-EOI interrupts? > If it doesn't, we might as well not implement them... :/ > > I'm keeping the kernel patches qu...
2015 Oct 16
10
[PATCH v2 0/9] Hyper-V synthetic interrupt controller
This patchset implements the KVM part of the synthetic interrupt controller (SynIC) which is a building block of the Hyper-V paravirtualized device bus (vmbus). SynIC is a lapic extension, which is controlled via MSRs and maintains for each vCPU - 16 synthetic interrupt "lines" (SINT's); each can be configured to trigger a specific interrupt vector optionally with auto-EOI
2015 Oct 16
10
[PATCH v2 0/9] Hyper-V synthetic interrupt controller
This patchset implements the KVM part of the synthetic interrupt controller (SynIC) which is a building block of the Hyper-V paravirtualized device bus (vmbus). SynIC is a lapic extension, which is controlled via MSRs and maintains for each vCPU - 16 synthetic interrupt "lines" (SINT's); each can be configured to trigger a specific interrupt vector optionally with auto-EOI
2015 Oct 26
3
[kvm-unit-tests PATCH] x86: hyperv_synic: Hyper-V SynIC test
Hyper-V SynIC is a Hyper-V synthetic interrupt controller. The test runs on every vCPU and performs the following steps: * read from all Hyper-V SynIC MSR's * setup Hyper-V SynIC evt/msg pages * setup SINT's routing * inject SINT's into destination vCPU by 'hyperv-synic-test-device' * wait for SINT's isr's completion * clear Hyper-V SynIC evt/msg pages and destroy
2015 Oct 26
3
[kvm-unit-tests PATCH] x86: hyperv_synic: Hyper-V SynIC test
Hyper-V SynIC is a Hyper-V synthetic interrupt controller. The test runs on every vCPU and performs the following steps: * read from all Hyper-V SynIC MSR's * setup Hyper-V SynIC evt/msg pages * setup SINT's routing * inject SINT's into destination vCPU by 'hyperv-synic-test-device' * wait for SINT's isr's completion * clear Hyper-V SynIC evt/msg pages and destroy
2015 Oct 09
5
[PATCH 0/2] Hyper-V synthetic interrupt controller
This patchset implements the KVM part of the synthetic interrupt controller (synic) which is a building block of the Hyper-V paravirtualized device bus (vmbus). Synic is a lapic extension, which is controlled via MSRs and maintains for each vCPU - 16 synthetic interrupt "lines" (SINT's); each can be configured to trigger a specific interrupt vector optionally with auto-EOI
2015 Oct 09
5
[PATCH 0/2] Hyper-V synthetic interrupt controller
This patchset implements the KVM part of the synthetic interrupt controller (synic) which is a building block of the Hyper-V paravirtualized device bus (vmbus). Synic is a lapic extension, which is controlled via MSRs and maintains for each vCPU - 16 synthetic interrupt "lines" (SINT's); each can be configured to trigger a specific interrupt vector optionally with auto-EOI
2015 Nov 02
0
[kvm-unit-tests PATCH] x86: hyperv_synic: Hyper-V SynIC test
...backs that only work if enable_apicv or !enable_apicv: if (enable_apicv) kvm_x86_ops->update_cr8_intercept = NULL; else { kvm_x86_ops->hwapic_irr_update = NULL; kvm_x86_ops->hwapic_isr_update = NULL; kvm_x86_ops->deliver_posted_interrupt = NULL; kvm_x86_ops->sync_pir_to_irr = vmx_sync_pir_to_irr_dummy; } The question then is... does Hyper-V actually use auto-EOI interrupts? If it doesn't, we might as well not implement them... :/ I'm keeping the kernel patches queued for my own testing, but this o...