linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [Patch v7 00/18] Enable support of IOAPIC hotplug on x86 platforms
@ 2014-10-27  5:20 Jiang Liu
  0 siblings, 0 replies; 2+ messages in thread
From: Jiang Liu @ 2014-10-27  5:20 UTC (permalink / raw)
  To: Benjamin Herrenschmidt, Thomas Gleixner, Ingo Molnar,
	H. Peter Anvin, Rafael J. Wysocki, Bjorn Helgaas, Randy Dunlap,
	Yinghai Lu, Borislav Petkov
  Cc: Jiang Liu, Konrad Rzeszutek Wilk, Andrew Morton, Tony Luck,
	Joerg Roedel, Greg Kroah-Hartman, x86, linux-kernel, linux-pci,
	linux-acpi

This patch set enhances IOAPIC core and ACPI drivers to support IOAPIC
hotplug on x86 platforms. It's based on v3.18-rc2 at
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

You may pull it from 
https://github.com/jiangliu/linux.git ioapic/hotplug_v7

We have pick up several patches from Yinghai's original IOAPIC hotplug
patch set and reimplemented IOAPIC driver as an ACPI driver instead of
a PCI driver.

It has been tested on a 4-socket Intel SDV with socket hot-addition
capability. Any suggestions are welcomed!

Patch 1-3 are bugfixes against v3.17 and should target v3.18. Patch 1
has been merged into tip/x86/urgent.
Patch 4-7 are bugfixes and enhancements to ACPI subsystem
Patch 8 killes PCI IOAPIC driver
Patch 9-17 enhances IOAPIC core to support IOAPIC hotplug
Patch 18 reimplements ACPI IOAPIC driver and enables IOAPIC hotplug

V6->V7:
1) Rebase to v3.18-rc2
2) Three bugfixes for v3.18
V5->V6:
1) Rebase to the latest v3.17-16
2) Minor fixes for comments
V4->V5:
1) Fix a building error
2) Don't rename processor_core.c as apic_id.c
3) Improve comments
4) Reorder patches to get rid of some temporary code
V3->V4:
1) Fix a bug in manage IOAPIC reference count
2) Rebase to v3.17-rc2
3) Refine commit messages
V2->V3:
1) Refine ACPI resource walk functions for PCI root bus and IOAPIC
2) Improve commit messages
3) Reorder patch order for better maintenence

Jiang Liu (15):
  ACPI, irq: fix regression casued by 6b9fb7082409
  x86, intel-mid: Create IRQs for APB timers and RTC timers
  ACPI, irq, x86: Return IRQ instead of GSI in mp_register_gsi()
  x86, PCI, ACPI: Kill private function resource_to_addr() in
    arch/x86/pci/acpi.c
  ACPI: Correct return value of acpi_dev_resource_address_space()
  ACPI: Fix minor syntax issues in processor_core.c
  PCI: Remove PCI ioapic driver
  x86, irq: Remove __init marker for functions will be used by IOAPIC
    hotplug
  x86, irq: Keep balance of IOAPIC pin reference count
  x86, irq: Refine mp_register_ioapic() to prepare for IOAPIC hotplug
  x86, irq, ACPI: Introduce a rwsem to protect IOAPIC operations from
    hotplug
  x86, irq, ACPI: Implement interface to support ACPI based IOAPIC
    hot-addition
  x86, irq, ACPI: Implement interfaces to support ACPI based IOAPIC
    hot-removal
  x86, irq: Introduce helper to check whether an IOAPIC has been
    registered
  x86, irq, ACPI: Implement ACPI driver to support IOAPIC hotplug

Yinghai Lu (3):
  ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug
  x86, irq: Split out alloc_ioapic_save_registers()
  x86, irq: Prefer assigned ID in APIC ID register for x86_64

 arch/x86/include/asm/io_apic.h    |    6 +-
 arch/x86/kernel/acpi/boot.c       |  102 ++++++++++++++--
 arch/x86/kernel/apb_timer.c       |    2 -
 arch/x86/kernel/apic/io_apic.c    |  234 +++++++++++++++++++++++++++++-------
 arch/x86/pci/acpi.c               |  144 +++++++++--------------
 arch/x86/pci/intel_mid_pci.c      |   10 +-
 arch/x86/pci/irq.c                |    7 +-
 arch/x86/platform/intel-mid/sfi.c |    2 +
 drivers/acpi/Kconfig              |    6 +
 drivers/acpi/Makefile             |    1 +
 drivers/acpi/internal.h           |    7 ++
 drivers/acpi/ioapic.c             |  235 +++++++++++++++++++++++++++++++++++++
 drivers/acpi/pci_irq.c            |   11 +-
 drivers/acpi/pci_root.c           |    3 +
 drivers/acpi/processor_core.c     |  131 ++++++++++++++++++---
 drivers/acpi/resource.c           |    2 +-
 drivers/pci/Kconfig               |    7 --
 drivers/pci/Makefile              |    2 -
 drivers/pci/ioapic.c              |  121 -------------------
 include/linux/acpi.h              |    5 +
 include/linux/pci.h               |    1 +
 21 files changed, 739 insertions(+), 300 deletions(-)
 create mode 100644 drivers/acpi/ioapic.c
 delete mode 100644 drivers/pci/ioapic.c

-- 
1.7.10.4


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

* [Patch v7 00/18] Enable support of IOAPIC hotplug on x86 platforms
@ 2014-10-27  5:21 Jiang Liu
  0 siblings, 0 replies; 2+ messages in thread
From: Jiang Liu @ 2014-10-27  5:21 UTC (permalink / raw)
  To: Benjamin Herrenschmidt, Thomas Gleixner, Ingo Molnar,
	H. Peter Anvin, Rafael J. Wysocki, Bjorn Helgaas, Randy Dunlap,
	Yinghai Lu, Borislav Petkov
  Cc: Jiang Liu, Konrad Rzeszutek Wilk, Andrew Morton, Tony Luck,
	Joerg Roedel, Greg Kroah-Hartman, x86, linux-kernel, linux-pci,
	linux-acpi

This patch set enhances IOAPIC core and ACPI drivers to support IOAPIC
hotplug on x86 platforms. It's based on v3.18-rc2 at
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

You may pull it from 
https://github.com/jiangliu/linux.git ioapic/hotplug_v7

We have pick up several patches from Yinghai's original IOAPIC hotplug
patch set and reimplemented IOAPIC driver as an ACPI driver instead of
a PCI driver.

It has been tested on a 4-socket Intel SDV with socket hot-addition
capability. Any suggestions are welcomed!

Patch 1-3 are bugfixes against v3.17 and should target v3.18. Patch 1
has been merged into tip/x86/urgent.
Patch 4-7 are bugfixes and enhancements to ACPI subsystem
Patch 8 killes PCI IOAPIC driver
Patch 9-17 enhances IOAPIC core to support IOAPIC hotplug
Patch 18 reimplements ACPI IOAPIC driver and enables IOAPIC hotplug

V6->V7:
1) Rebase to v3.18-rc2
2) Three bugfixes for v3.18
V5->V6:
1) Rebase to the latest v3.17-16
2) Minor fixes for comments
V4->V5:
1) Fix a building error
2) Don't rename processor_core.c as apic_id.c
3) Improve comments
4) Reorder patches to get rid of some temporary code
V3->V4:
1) Fix a bug in manage IOAPIC reference count
2) Rebase to v3.17-rc2
3) Refine commit messages
V2->V3:
1) Refine ACPI resource walk functions for PCI root bus and IOAPIC
2) Improve commit messages
3) Reorder patch order for better maintenence

Jiang Liu (15):
  ACPI, irq: fix regression casued by 6b9fb7082409
  x86, intel-mid: Create IRQs for APB timers and RTC timers
  ACPI, irq, x86: Return IRQ instead of GSI in mp_register_gsi()
  x86, PCI, ACPI: Kill private function resource_to_addr() in
    arch/x86/pci/acpi.c
  ACPI: Correct return value of acpi_dev_resource_address_space()
  ACPI: Fix minor syntax issues in processor_core.c
  PCI: Remove PCI ioapic driver
  x86, irq: Remove __init marker for functions will be used by IOAPIC
    hotplug
  x86, irq: Keep balance of IOAPIC pin reference count
  x86, irq: Refine mp_register_ioapic() to prepare for IOAPIC hotplug
  x86, irq, ACPI: Introduce a rwsem to protect IOAPIC operations from
    hotplug
  x86, irq, ACPI: Implement interface to support ACPI based IOAPIC
    hot-addition
  x86, irq, ACPI: Implement interfaces to support ACPI based IOAPIC
    hot-removal
  x86, irq: Introduce helper to check whether an IOAPIC has been
    registered
  x86, irq, ACPI: Implement ACPI driver to support IOAPIC hotplug

Yinghai Lu (3):
  ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug
  x86, irq: Split out alloc_ioapic_save_registers()
  x86, irq: Prefer assigned ID in APIC ID register for x86_64

 arch/x86/include/asm/io_apic.h    |    6 +-
 arch/x86/kernel/acpi/boot.c       |  102 ++++++++++++++--
 arch/x86/kernel/apb_timer.c       |    2 -
 arch/x86/kernel/apic/io_apic.c    |  234 +++++++++++++++++++++++++++++-------
 arch/x86/pci/acpi.c               |  144 +++++++++--------------
 arch/x86/pci/intel_mid_pci.c      |   10 +-
 arch/x86/pci/irq.c                |    7 +-
 arch/x86/platform/intel-mid/sfi.c |    2 +
 drivers/acpi/Kconfig              |    6 +
 drivers/acpi/Makefile             |    1 +
 drivers/acpi/internal.h           |    7 ++
 drivers/acpi/ioapic.c             |  235 +++++++++++++++++++++++++++++++++++++
 drivers/acpi/pci_irq.c            |   11 +-
 drivers/acpi/pci_root.c           |    3 +
 drivers/acpi/processor_core.c     |  131 ++++++++++++++++++---
 drivers/acpi/resource.c           |    2 +-
 drivers/pci/Kconfig               |    7 --
 drivers/pci/Makefile              |    2 -
 drivers/pci/ioapic.c              |  121 -------------------
 include/linux/acpi.h              |    5 +
 include/linux/pci.h               |    1 +
 21 files changed, 739 insertions(+), 300 deletions(-)
 create mode 100644 drivers/acpi/ioapic.c
 delete mode 100644 drivers/pci/ioapic.c

-- 
1.7.10.4


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

end of thread, other threads:[~2014-10-27  5:21 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-10-27  5:20 [Patch v7 00/18] Enable support of IOAPIC hotplug on x86 platforms Jiang Liu
2014-10-27  5:21 Jiang Liu

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