All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/19 v2] Improve IRQ remapping abstraction in x86 core code
@ 2012-08-20 13:55 Joerg Roedel
  2012-08-20 13:55 ` [PATCH 01/19] x86, apic: Move irq_remapping_enabled checks into IRQ-remapping code Joerg Roedel
                   ` (19 more replies)
  0 siblings, 20 replies; 51+ messages in thread
From: Joerg Roedel @ 2012-08-20 13:55 UTC (permalink / raw)
  To: x86; +Cc: linux-kernel, joro, Suresh Siddha, Yinghai Lu

Hi,

here is the second version of the patch-set to improve the abstraction
of interrupt remapping in the x86 core code. A more detailed description
can be found in the original post at:

	https://lkml.org/lkml/2012/8/7/317

Changes from v1->v2:

	* Fixed a couple of compile issues on i386 (reported by
	  Fengguang Wu, thanks a lot)
	* Rebased to Linux v3.6-rc2

Please review.

Thanks,

	Joerg

Diffstat:

 arch/x86/include/asm/hpet.h          |    5 +-
 arch/x86/include/asm/hw_irq.h        |   13 +-
 arch/x86/include/asm/io_apic.h       |   31 +++
 arch/x86/include/asm/irq_remapping.h |   40 ++--
 arch/x86/include/asm/pci.h           |    2 +
 arch/x86/include/asm/x86_init.h      |   30 ++-
 arch/x86/kernel/apic/apic.c          |   28 ++-
 arch/x86/kernel/apic/io_apic.c       |  377 +++++++++++++---------------------
 arch/x86/kernel/hpet.c               |    2 +-
 arch/x86/kernel/x86_init.c           |   25 ++-
 drivers/iommu/dmar.c                 |    2 +
 drivers/iommu/intel-iommu.c          |    2 +
 drivers/iommu/intel_irq_remapping.c  |    8 +
 drivers/iommu/irq_remapping.c        |  186 ++++++++++++++++-
 drivers/iommu/irq_remapping.h        |    3 +
 15 files changed, 454 insertions(+), 300 deletions(-)



^ permalink raw reply	[flat|nested] 51+ messages in thread
* [PATCH 0/19] Improve IRQ remapping abstraction in x86 core code
@ 2012-08-07 15:43 Joerg Roedel
  2012-08-07 15:43 ` [PATCH 02/19] [RFC] x86, apic: Mask IO-APIC and PIC unconditionally on LAPIC resume Joerg Roedel
  0 siblings, 1 reply; 51+ messages in thread
From: Joerg Roedel @ 2012-08-07 15:43 UTC (permalink / raw)
  To: x86; +Cc: Suresh Siddha, Yinghai Lu, linux-kernel

Hi,

here is a patch-set to clean-up and the x86 APIC and IO-APIC code from
special cases for interrupt remapping. The problems are mostly solved by
introducing new function pointers to the x86_msi_ops and x86_io_apic_ops
which are changed when interrupt remapping gets enabled.

With this patch-set all checks for irq_remapping_enabled and
irq_remapped() happen only in the IRQ remapping specific code. A few
CONFIG_IRQ_REMAP checks are gone as well. The patches are based on Linux
v3.6-rc1.

The code was tested on various machines (AMD and Intel based) with and
without IRQ remapping in use. I have found no issues so far, but broader
testing is certainly necessary.

For anyone interested in a git-tree I pushed this code to

	git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git ioapic-cleanups

Comments appreciated :-)

Regards,
	
	Joerg

Diffstat:

 arch/x86/include/asm/hpet.h          |    4 +-
 arch/x86/include/asm/hw_irq.h        |   15 +-
 arch/x86/include/asm/io_apic.h       |   21 ++
 arch/x86/include/asm/irq_remapping.h |   40 ++--
 arch/x86/include/asm/pci.h           |    2 +
 arch/x86/include/asm/x86_init.h      |   30 ++-
 arch/x86/kernel/apic/apic.c          |   28 ++-
 arch/x86/kernel/apic/io_apic.c       |  375 +++++++++++++---------------------
 arch/x86/kernel/hpet.c               |    2 +-
 arch/x86/kernel/x86_init.c           |   25 ++-
 drivers/iommu/dmar.c                 |    2 +
 drivers/iommu/intel-iommu.c          |    2 +
 drivers/iommu/intel_irq_remapping.c  |    8 +
 drivers/iommu/irq_remapping.c        |  186 ++++++++++++++++-
 drivers/iommu/irq_remapping.h        |    3 +
 15 files changed, 444 insertions(+), 299 deletions(-)



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

end of thread, other threads:[~2012-11-01 18:49 UTC | newest]

Thread overview: 51+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-20 13:55 [PATCH 00/19 v2] Improve IRQ remapping abstraction in x86 core code Joerg Roedel
2012-08-20 13:55 ` [PATCH 01/19] x86, apic: Move irq_remapping_enabled checks into IRQ-remapping code Joerg Roedel
2012-08-20 13:55 ` [PATCH 02/19] [RFC] x86, apic: Mask IO-APIC and PIC unconditionally on LAPIC resume Joerg Roedel
2012-08-23 20:58   ` Sebastian Andrzej Siewior
2012-08-20 13:55 ` [PATCH 03/19] x86, io_apic: Introduce x86_io_apic_ops.disable() Joerg Roedel
2012-08-23 21:11   ` Sebastian Andrzej Siewior
2012-08-24 12:22     ` Joerg Roedel
2012-08-25 17:17       ` Sebastian Andrzej Siewior
2012-08-26  9:56         ` Joerg Roedel
2012-08-20 13:55 ` [PATCH 04/19] x86, io_apic: Introduce x86_io_apic_ops.print_entries for debugging Joerg Roedel
2012-08-26 18:03   ` Sebastian Andrzej Siewior
2012-08-20 13:55 ` [PATCH 05/19] x86, hpet: Introduce x86_msi_ops.setup_hpet_msi Joerg Roedel
2012-08-20 13:55 ` [PATCH 06/19] x86, msi: Use IRQ remapping specific setup_msi_irqs routine Joerg Roedel
2012-08-26 18:10   ` Sebastian Andrzej Siewior
2012-08-20 13:55 ` [PATCH 07/19] x86, io_apic: Introduce set_affinity function pointer Joerg Roedel
2012-08-20 13:55 ` [PATCH 08/19] x86, io_apic: Convert setup_ioapic_entry to " Joerg Roedel
2012-08-20 13:55 ` [PATCH 09/19] x86, io_apic: Move irq_remapping_enabled checks out of check_timer() Joerg Roedel
2012-08-20 13:55 ` [PATCH 10/19] x86, io_apic: Introduce function pointer for setup_timer_IRQ0_pin Joerg Roedel
2012-08-26 18:16   ` Sebastian Andrzej Siewior
2012-09-25 12:57     ` Joerg Roedel
2012-08-20 13:55 ` [PATCH 11/19] x86, irq: Move irq_remapping_enabled declaration to iommu code Joerg Roedel
2012-08-20 13:55 ` [PATCH 12/19] x86, irq: Add data structure to keep AMD specific irq remapping information Joerg Roedel
2012-08-26 18:21   ` Sebastian Andrzej Siewior
2012-09-25 13:04     ` Joerg Roedel
2012-08-20 13:55 ` [PATCH 13/19] x86, io-apic: Move CONFIG_IRQ_REMAP code out of x86 core Joerg Roedel
2012-08-26 18:23   ` Sebastian Andrzej Siewior
2012-08-20 13:56 ` [PATCH 14/19] x86, io-apic: Remove !irq_remapped() check from __target_IO_APIC_irq() Joerg Roedel
2012-08-26 18:26   ` Sebastian Andrzej Siewior
2012-08-20 13:56 ` [PATCH 15/19] x86, irq: Move irq_remapped() check into free_remapped_irq Joerg Roedel
2012-08-26 18:27   ` Sebastian Andrzej Siewior
2012-09-25 13:29     ` Joerg Roedel
2012-08-20 13:56 ` [PATCH 16/19] x86, irq: Introduce setup_remapped_irq() Joerg Roedel
2012-08-26 18:30   ` Sebastian Andrzej Siewior
2012-09-25 13:43     ` Joerg Roedel
2012-08-20 13:56 ` [PATCH 17/19] x86, msi: Introduce x86_msi.compose_msi_msg call-back Joerg Roedel
2012-08-20 14:08   ` Konrad Rzeszutek Wilk
2012-08-21  8:40     ` Joerg Roedel
2012-08-21 14:42       ` Konrad Rzeszutek Wilk
2012-08-21 15:29         ` Joerg Roedel
2012-08-21 15:41         ` Joerg Roedel
2012-08-22 14:41         ` Joerg Roedel
2012-08-26 18:41   ` Sebastian Andrzej Siewior
2012-09-25 13:59     ` Joerg Roedel
2012-08-20 13:56 ` [PATCH 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel
2012-08-26 18:52   ` Sebastian Andrzej Siewior
2012-09-25 15:09     ` Joerg Roedel
2012-08-20 13:56 ` [PATCH 19/19] x86, irq: Move irq_remapped out of x86 core code Joerg Roedel
2012-08-26 19:17 ` [PATCH 00/19 v2] Improve IRQ remapping abstraction in " Sebastian Andrzej Siewior
2012-09-19 14:52   ` Joerg Roedel
2012-11-01 18:49     ` Sebastian Andrzej Siewior
  -- strict thread matches above, loose matches on Subject: below --
2012-08-07 15:43 [PATCH 0/19] " Joerg Roedel
2012-08-07 15:43 ` [PATCH 02/19] [RFC] x86, apic: Mask IO-APIC and PIC unconditionally on LAPIC resume Joerg Roedel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.