From: Jiang Liu <jiang.liu@linux.intel.com>
To: Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Thomas Gleixner <tglx@linutronix.de>,
Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Bjorn Helgaas <bhelgaas@google.com>,
Randy Dunlap <rdunlap@infradead.org>,
Yinghai Lu <yinghai@kernel.org>, Borislav Petkov <bp@alien8.de>
Cc: Jiang Liu <jiang.liu@linux.intel.com>,
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
Andrew Morton <akpm@linux-foundation.org>,
Tony Luck <tony.luck@intel.com>, Joerg Roedel <joro@8bytes.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
x86@kernel.org, linux-kernel@vger.kernel.org,
linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org
Subject: [Patch v8 00/18] Enable support of IOAPIC hotplug on x86 platforms
Date: Sun, 2 Nov 2014 14:04:15 +0800 [thread overview]
Message-ID: <1414908273-7552-1-git-send-email-jiang.liu@linux.intel.com> (raw)
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_v8
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
V7-V8:
1) Use mutex instead of rwsem to protect IOAPIC from 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):
x86: ACPI: Do not translate GSI number if IOAPIC is disabled
x86, intel-mid: Create IRQs for APB timers and RTC timers
x86, irq, ACPI: 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
next reply other threads:[~2014-11-02 6:01 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-02 6:04 Jiang Liu [this message]
2014-11-02 6:04 ` [Patch v8 01/18] x86: ACPI: Do not translate GSI number if IOAPIC is disabled Jiang Liu
2014-11-02 6:04 ` [Patch v8 02/18] x86, intel-mid: Create IRQs for APB timers and RTC timers Jiang Liu
2014-11-02 6:04 ` [Patch v8 03/18] x86, irq, ACPI: Return IRQ instead of GSI in mp_register_gsi() Jiang Liu
2014-11-02 6:04 ` [Patch v8 04/18] x86, PCI, ACPI: Kill private function resource_to_addr() in arch/x86/pci/acpi.c Jiang Liu
2014-11-02 6:04 ` [Patch v8 05/18] ACPI: Correct return value of acpi_dev_resource_address_space() Jiang Liu
2014-11-02 6:04 ` [Patch v8 06/18] ACPI: Fix minor syntax issues in processor_core.c Jiang Liu
2014-11-02 6:04 ` [Patch v8 07/18] ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug Jiang Liu
2014-11-02 6:04 ` [Patch v8 08/18] PCI: Remove PCI ioapic driver Jiang Liu
2014-11-02 6:04 ` [Patch v8 09/18] x86, irq: Split out alloc_ioapic_save_registers() Jiang Liu
2014-11-02 6:04 ` [Patch v8 10/18] x86, irq: Prefer assigned ID in APIC ID register for x86_64 Jiang Liu
2014-11-02 6:04 ` [Patch v8 11/18] x86, irq: Remove __init marker for functions will be used by IOAPIC hotplug Jiang Liu
2014-11-02 6:04 ` [Patch v8 12/18] x86, irq: Keep balance of IOAPIC pin reference count Jiang Liu
2014-11-02 6:04 ` [Patch v8 13/18] x86, irq: Refine mp_register_ioapic() to prepare for IOAPIC hotplug Jiang Liu
2014-11-02 6:04 ` [Patch v8 14/18] x86, irq, ACPI: Introduce a rwsem to protect IOAPIC operations from hotplug Jiang Liu
2014-11-03 11:00 ` [tip:x86/apic] x86, irq, ACPI: Introduce a mutex " tip-bot for Jiang Liu
2014-12-19 14:04 ` tip-bot for Jiang Liu
2014-11-02 6:04 ` [Patch v8 15/18] x86, irq, ACPI: Implement interface to support ACPI based IOAPIC hot-addition Jiang Liu
2014-11-03 9:41 ` Thomas Gleixner
2014-11-03 9:51 ` Jiang Liu
2014-11-02 6:04 ` [Patch v8 16/18] x86, irq, ACPI: Implement interfaces to support ACPI based IOAPIC hot-removal Jiang Liu
2014-11-02 6:04 ` [Patch v8 17/18] x86, irq: Introduce helper to check whether an IOAPIC has been registered Jiang Liu
2014-11-02 6:04 ` [Patch v8 18/18] x86, irq, ACPI: Implement ACPI driver to support IOAPIC hotplug Jiang Liu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1414908273-7552-1-git-send-email-jiang.liu@linux.intel.com \
--to=jiang.liu@linux.intel.com \
--cc=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=bp@alien8.de \
--cc=gregkh@linuxfoundation.org \
--cc=hpa@zytor.com \
--cc=joro@8bytes.org \
--cc=konrad.wilk@oracle.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=rdunlap@infradead.org \
--cc=rjw@rjwysocki.net \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.