Skip to contentSkip to conversation

PCI fixes for v4.5

GIT PULL Bjorn Helgaas 2 participants 3 messages Feb 27, 2016 PCI

lore
Share & tools
lore
#0 lore raw

Hi Linus,

The big chunk here is the paravirtual front-end for Linux guests of a Microsoft Hyper-V VM. It's new, so no risk of regressions to pci-hyperv itself. It does include minor changes to common code, but they are low-risk.

This also reverts a few pieces of the recent IOAPIC hotplug work because they caused a regression for existing drivers that require IRQs to be enabled for upstream bridges.

Finally, explicitly restrict the MVEBU driver to 32-bit ARM because it uses some PCI glue only available there. It depends on ARCH_MVEBU, which used to be 32-bit ARM only but is now becoming available for 64-bit ARM.

Bjorn

The following changes since commit 0cf1337e0b83c16de4e7e98dad3a6afce6043fea:

PCI: rcar: Add device tree support for r8a7793 (2016-02-05 14:13:53 -0600)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-v4.5-fixes-2

for you to fetch changes up to 2f8f01f7e495901042339a333d4385ed5b1e426a:

Merge branch 'pci/host-hv' into for-linus (2016-02-27 08:52:36 -0600)

----------------------------------------------------------------
PCI updates for v4.5:

Enumeration
Revert x86 pcibios_alloc_irq() to fix regression (Bjorn Helgaas)

Marvell MVEBU host bridge driver
Restrict build to 32-bit ARM (Thierry Reding)

Microsoft Hyper-V host bridge driver
Add paravirtual front-end for guests of Microsoft Hyper-V VMs (Jake Oshins)

----------------------------------------------------------------
Bjorn Helgaas (4):
Revert "x86/PCI: Don't alloc pcibios-irq when MSI is enabled" Revert "PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed" Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()" Merge branch 'pci/host-hv' into for-linus

Jake Oshins (3):
PCI: Add fwnode_handle to x86 pci_sysdata
PCI: Look up IRQ domain by fwnode_handle
PCI: hv: Add paravirtual PCI front-end for Microsoft Hyper-V VMs

Thierry Reding (1):
PCI: mvebu: Restrict build to 32-bit ARM

 MAINTAINERS                    |    1 +
 arch/x86/include/asm/pci.h     |   15 +
 arch/x86/include/asm/pci_x86.h |    2 +
 arch/x86/pci/common.c          |   26 +-
 arch/x86/pci/intel_mid_pci.c   |    9 +-
 arch/x86/pci/irq.c             |   23 +-
 drivers/acpi/pci_irq.c         |   17 +-
 drivers/pci/Kconfig            |    7 +
 drivers/pci/host/Kconfig       |    1 +
 drivers/pci/host/Makefile      |    1 +
 drivers/pci/host/pci-hyperv.c  | 2346 ++++++++++++++++++++++++++++++++++++++++
 drivers/pci/probe.c            |   15 +
 include/linux/pci.h            |   21 +-
 13 files changed, 2437 insertions(+), 47 deletions(-)
 create mode 100644 drivers/pci/host/pci-hyperv.c
#1 lore raw
Quoted 5 lines · Bjorn Helgaas

The big chunk here is the paravirtual front-end for Linux guests of a Microsoft Hyper-V VM. It's new, so no risk of regressions to pci-hyperv itself. It does include minor changes to common code, but they are low-risk.

I really don't want to take new features like this that change existing code when I'm about to do a rc6.

I've done late hardware-enabling pulls before with new drivers etc, but then they are meant to enable consumer hardware that people would have trouble getting Linux installed on etc. A paravirt Hyper-V VM install doesn't really count as that kind of "we need to get this in quickly out of the normal development model".

I didn't check, but can you peel off that part if it's at the top and just send me the actual bugfixes?

Linus

#2 lore raw
Quoted 10 lines · Linus Torvalds
Quoted 5 lines · Bjorn Helgaas

The big chunk here is the paravirtual front-end for Linux guests of a Microsoft Hyper-V VM. It's new, so no risk of regressions to pci-hyperv itself. It does include minor changes to common code, but they are low-risk.

I really don't want to take new features like this that change existing code when I'm about to do a rc6.

Quoted 8 lines

I've done late hardware-enabling pulls before with new drivers etc, but then they are meant to enable consumer hardware that people would have trouble getting Linux installed on etc. A paravirt Hyper-V VM install doesn't really count as that kind of "we need to get this in quickly out of the normal development model".

I didn't check, but can you peel off that part if it's at the top and just send me the actual bugfixes?

Of course! The Hyper-V stuff was the top-most merge, so I dropped that and added a new tag, pci-v4.5-fixes-3, with just the fixes. Here it is:

The following changes since commit 0cf1337e0b83c16de4e7e98dad3a6afce6043fea:

PCI: rcar: Add device tree support for r8a7793 (2016-02-05 14:13:53 -0600)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-v4.5-fixes-3

for you to fetch changes up to 61d9e854dfb91b46b99ffd3d31fc7d45d2b95f31:

PCI: mvebu: Restrict build to 32-bit ARM (2016-02-27 08:52:20 -0600)

----------------------------------------------------------------
PCI updates for v4.5:

Enumeration
Revert x86 pcibios_alloc_irq() to fix regression (Bjorn Helgaas)

Marvell MVEBU host bridge driver
Restrict build to 32-bit ARM (Thierry Reding)

----------------------------------------------------------------
Bjorn Helgaas (3):
Revert "x86/PCI: Don't alloc pcibios-irq when MSI is enabled" Revert "PCI: Add helpers to manage pci_dev->irq and pci_dev->irq_managed" Revert "PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()"

Thierry Reding (1):
PCI: mvebu: Restrict build to 32-bit ARM

 arch/x86/include/asm/pci_x86.h |  2 ++
 arch/x86/pci/common.c          | 26 ++++++++++----------------
 arch/x86/pci/intel_mid_pci.c   |  9 +++------
 arch/x86/pci/irq.c             | 23 +++++++++++++++++++----
 drivers/acpi/pci_irq.c         | 17 +++++++++++++----
 drivers/pci/host/Kconfig       |  1 +
 include/linux/pci.h            | 17 -----------------
 7 files changed, 48 insertions(+), 47 deletions(-)