linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [v7 0/4] prerequisite changes for VT-d posted-interrupts
@ 2015-05-19  9:07 Feng Wu
  2015-05-19  9:07 ` [v7 1/4] genirq: Introduce irq_set_vcpu_affinity() to target an interrupt to a VCPU Feng Wu
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Feng Wu @ 2015-05-19  9:07 UTC (permalink / raw)
  To: tglx, mingo, hpa; +Cc: linux-kernel, jiang.liu, Feng Wu

VT-d Posted-Interrupts is an enhancement to CPU side Posted-Interrupt.
With VT-d Posted-Interrupts enabled, external interrupts from
direct-assigned devices can be delivered to guests without VMM
intervention when guest is running in non-root mode.

You can find the VT-d Posted-Interrtups Spec. in the following URL:
http://www.intel.com/content/www/us/en/intelligent-systems/intel-technology/vt-directed-io-spec.html

This series implement some prerequisite parts for VT-d posted-interrupts. It was part of
http://thread.gmane.org/gmane.linux.kernel.iommu/7708. To make things clear, I will divide
the whole series which contain multiple components into three parts:
- prerequisite changes (included in this series)
- IOMMU part (v4 was reviewed, some comments need to be addressed)
- KVM and VFIO parts (will send out this part once the first two parts are accepted)

This series is rebased on the x86-apic branch of tip tree.

v6 --> v7:
[1/4]:
- Add a KernelDoc comment for function irq_set_vcpu_affinity().

v5 --> v6:
[3/4]:
- Avoid the conditional in the exception handler smp_kvm_posted_intr_wakeup_ipi().
- Rename "wakeup_handler_callback" to "kvm_posted_intr_wakeup_handler".

[4/4]
- Newly added in this series, show the statistics information for posted-interrupts.


v4 --> v5:
- Move the declaration of "irq_chip_set_vcpu_affinity_parent()" to [1/3].
- Use the accessor to get "struct irq_data", "struct irq_chip".
- Use "irq_get_desc_lock()" instead of "irq_to_desc()".
- Declare "wakeup_handler_callback" in "asm/irq.h".
- Use entering_ack_irq()/exiting_irq() in smp_kvm_posted_intr_wakeup_ipi().


Feng Wu (3):
  x86/irq: Implement irq_set_vcpu_affinity for pci_msi_ir_controller
  x86/irq: Define a global vector for VT-d Posted-Interrupts
  x86/irq: Show statistics information for posted-interrupts

Jiang Liu (1):
  genirq: Introduce irq_set_vcpu_affinity() to target an interrupt to a
    VCPU

 arch/x86/include/asm/entry_arch.h  |  2 ++
 arch/x86/include/asm/hardirq.h     |  1 +
 arch/x86/include/asm/hw_irq.h      |  2 ++
 arch/x86/include/asm/irq.h         |  4 ++++
 arch/x86/include/asm/irq_vectors.h |  1 +
 arch/x86/kernel/apic/msi.c         |  1 +
 arch/x86/kernel/entry_64.S         |  2 ++
 arch/x86/kernel/irq.c              | 43 ++++++++++++++++++++++++++++++++++++++
 arch/x86/kernel/irqinit.c          |  2 ++
 include/linux/irq.h                |  6 ++++++
 kernel/irq/chip.c                  | 14 +++++++++++++
 kernel/irq/manage.c                | 31 +++++++++++++++++++++++++++
 12 files changed, 109 insertions(+)

-- 
2.1.0


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2015-05-19 13:55 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-19  9:07 [v7 0/4] prerequisite changes for VT-d posted-interrupts Feng Wu
2015-05-19  9:07 ` [v7 1/4] genirq: Introduce irq_set_vcpu_affinity() to target an interrupt to a VCPU Feng Wu
2015-05-19 13:45   ` [tip:irq/core] " tip-bot for Jiang Liu
2015-05-19  9:07 ` [v7 2/4] x86/irq: Implement irq_set_vcpu_affinity for pci_msi_ir_controller Feng Wu
2015-05-19 13:54   ` [tip:x86/apic] x86/irq/msi: Implement irq_set_vcpu_affinity for remapped MSI irqs tip-bot for Feng Wu
2015-05-19  9:07 ` [v7 3/4] x86/irq: Define a global vector for VT-d Posted-Interrupts Feng Wu
2015-05-19 13:54   ` [tip:x86/apic] " tip-bot for Feng Wu
2015-05-19  9:07 ` [v7 4/4] x86/irq: Show statistics information for posted-interrupts Feng Wu
2015-05-19 13:55   ` [tip:x86/apic] " tip-bot for Feng Wu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).