[3.19.y-ckt stable] Patch "PCI: Don't use 64-bit bus addresses on PA-RISC" has been added to staging queue

Kamal Mostafa kamal at canonical.com
Mon Sep 21 22:26:33 UTC 2015


This is a note to let you know that I have just added a patch titled

    PCI: Don't use 64-bit bus addresses on PA-RISC

to the linux-3.19.y-queue branch of the 3.19.y-ckt extended stable tree 
which can be found at:

    http://kernel.ubuntu.com/git/ubuntu/linux.git/log/?h=linux-3.19.y-queue

This patch is scheduled to be released in version 3.19.8-ckt7.

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.19.y-ckt tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable

Thanks.
-Kamal

------

>From b65ce1f9e4c5a9cb24c5c3e0c9bebd9d947a0388 Mon Sep 17 00:00:00 2001
From: Bjorn Helgaas <bhelgaas at google.com>
Date: Thu, 20 Aug 2015 00:08:15 -0500
Subject: PCI: Don't use 64-bit bus addresses on PA-RISC

commit 45ea2a5fed6dacb9bb0558d8b21eacc1c45d5bb4 upstream.

Meelis and Helge reported that 3a9ad0b4fdcd ("PCI: Add pci_bus_addr_t")
caused HPMCs on A500 and hangs on rp5470.

PA-RISC does not set ARCH_DMA_ADDR_T_64BIT, even for 64-bit kernels, so
prior to 3a9ad0b4fdcd, we always used 32-bit PCI addresses.  After
3a9ad0b4fdcd, we do use 64-bit PCI addresses in 64-bit kernels, and
apparently there's some PA-RISC problem related to them.

Fixes: 3a9ad0b4fdcd ("PCI: Add pci_bus_addr_t")
Link: http://lkml.kernel.org/r/alpine.LRH.2.11.1507260929000.30065@math.ut.ee
Reported-by: Meelis Roos <mroos at linux.ee>
Reported-by: Helge Deller <deller at gmx.de>
Tested-by: Helge Deller <deller at gmx.de>
Based-on-idea-by: Yinghai Lu <yinghai at kernel.org>
Signed-off-by: Bjorn Helgaas <bhelgaas at google.com>
Acked-by: Yinghai Lu <yinghai at kernel.org>
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
 drivers/pci/Kconfig | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/pci/Kconfig b/drivers/pci/Kconfig
index 73de4ef..944f500 100644
--- a/drivers/pci/Kconfig
+++ b/drivers/pci/Kconfig
@@ -2,7 +2,7 @@
 # PCI configuration
 #
 config PCI_BUS_ADDR_T_64BIT
-	def_bool y if (ARCH_DMA_ADDR_T_64BIT || 64BIT)
+	def_bool y if (ARCH_DMA_ADDR_T_64BIT || (64BIT && !PARISC))
 	depends on PCI

 config PCI_MSI
--
1.9.1





More information about the kernel-team mailing list