Skip to content

Introduce a mechanism to allocate PCI IRQ on demand

Jiang Liu linux-acpi linux-pci lkml 3 versions – Applied

Status from this message: Applied to pci/irq with the following changelogs for v4.3, thanks!

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest4 patches 5 repliesApplied
  2. v24 patches 4 repliesSuperseded
  3. v1 RFC4 patches 12 repliesSuperseded

Changes in v3 from the cover letter

1) Change the default pcibios_alloc_irq() to always return 0, as suggested by Bjorn.
2) Refine comments.

Patches in v3 Applied

#Subject and filesSizeRepliesApplied
1/4PCI: Add hooks to allocate/free IRQ resources when binding/unbinding driverdrivers/pci/pci-driver.c include/linux/pci.h+22 -60 replies
2/4PCI, x86: Allocate PCI IRQ on demand and free it when not used anymorearch/x86/include/asm/pci_x86.h arch/x86/pci/common.c arch/x86/pci/intel_mid_pci.c +2 more+16 -370 replies
3/4PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managedarch/x86/pci/intel_mid_pci.c arch/x86/pci/irq.c drivers/acpi/pci_irq.c +1 more+27 -140 replies
4/4PCI, MSI: Free legacy PCI IRQ when enabling MSI/MSI-Xdrivers/pci/msi.c+5 -10 replies

Reviews trailers per patch

All 4 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchBjorn HelgaasThomas Gleixner
SeriesA-b A-b A-b A-b
1/4A-b
2/4A-b
3/4A-b
4/4A-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v3 thread

Cover letter [Patch v3 0/4] Introduce a mechanism to allocate PCI IRQ on demand

Hi Bjorn,
I have verified that this patch set could be applied to the
mainstream kernel without dependency on other patches, so could you please help to merge it?

This patch set introduces a mechanism to allocate PCI IRQ on demand and free it when not used anymore by hooking pci_device_probe() and pci_device_remove().

It will be used to track IOAPIC pin usage on x86 so we could support IOAPIC hot-removal.

The patch set passes Fengguang's 0day test suite.

V2->V3:
1) Change the default pcibios_alloc_irq() to always return 0, as suggested by Bjorn.
2) Refine comments.

V1->V2:
1) Refine pci_device_probe() to optimize for mainline code as suggested by Bjorn
2) Reorder patch set to put optional patch as the last (Patch 4)

Jiang Liu (4):
PCI: Add hooks to allocate/free IRQ resources when binding/unbinding
driver
PCI, x86: Allocate PCI IRQ on demand and free it when not used
anymore
PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed PCI, MSI: Free legacy PCI IRQ when enabling MSI/MSI-X

 arch/x86/include/asm/pci_x86.h |    2 --
 arch/x86/pci/common.c          |   20 +++++++++-----------
 arch/x86/pci/intel_mid_pci.c   |    9 ++++++---
 arch/x86/pci/irq.c             |   23 ++++-------------------
 drivers/acpi/pci_irq.c         |   17 ++++-------------
 drivers/pci/msi.c              |    6 +++++-
 drivers/pci/pci-driver.c       |   26 ++++++++++++++++++++------
 include/linux/pci.h            |   19 +++++++++++++++++++
 8 files changed, 67 insertions(+), 55 deletions(-)
Signature · 1 line
1.7.10.4