linux-kernel.vger.kernel.org archive mirror
 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; 53+ 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] 53+ messages in thread
* [PATCH 00/19 v4] Improve IRQ remapping abstraction in x86 core code
@ 2012-11-20 13:12 Joerg Roedel
  2012-11-20 13:12 ` [PATCH 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel
  0 siblings, 1 reply; 53+ messages in thread
From: Joerg Roedel @ 2012-11-20 13:12 UTC (permalink / raw)
  To: Thomas Gleixner, Ingo Molnar, H. Peter Anvin
  Cc: x86, iommu, linux-kernel, Suresh Siddha, Yinghai Lu,
	Sebastian Andrzej Siewior

Hi,

here is the fourth 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 v3->v4:

	* Rebased to v3.7-rc6
	* Added Acked-bys
	* Fixed problems with AMD IRQ remapping code that came up
	  in testing

Changes from v2->v3:

        * Rebased to v3.6-rc7
        * Worked in most comments on v2 by Sebastian Andrzej Siewior

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.

Cheers, 

        Joerg



^ permalink raw reply	[flat|nested] 53+ messages in thread
* [PATCH 00/19 v3] Improve IRQ remapping abstraction in x86 core code
@ 2012-09-26 10:44 Joerg Roedel
  2012-09-26 10:44 ` [PATCH 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel
  0 siblings, 1 reply; 53+ messages in thread
From: Joerg Roedel @ 2012-09-26 10:44 UTC (permalink / raw)
  To: x86
  Cc: linux-kernel, joro, Suresh Siddha, Yinghai Lu, Sebastian Andrzej Siewior

Hi,

here is the third 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 v2->v3:

	* Rebased to v3.6-rc7
	* Worked in most comments on v2 by Sebastian Andrzej Siewior

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.

Cheers,

	Joerg



^ permalink raw reply	[flat|nested] 53+ 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 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel
  0 siblings, 1 reply; 53+ 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] 53+ messages in thread

end of thread, other threads:[~2012-11-20 13:14 UTC | newest]

Thread overview: 53+ 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-11-20 13:12 [PATCH 00/19 v4] " Joerg Roedel
2012-11-20 13:12 ` [PATCH 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel
2012-09-26 10:44 [PATCH 00/19 v3] Improve IRQ remapping abstraction in x86 core code Joerg Roedel
2012-09-26 10:44 ` [PATCH 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel
2012-08-07 15:43 [PATCH 0/19] Improve IRQ remapping abstraction in x86 core code Joerg Roedel
2012-08-07 15:43 ` [PATCH 18/19] x86, io_apic: Introduce eoi_ioapic_pin call-back Joerg Roedel

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).