Re: A500 boot crash in 4.2.0-rc3-00246-g763e326

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 20.08.2015 21:31, Yinghai Lu wrote:
On Wed, Aug 19, 2015 at 10:42 PM, Bjorn Helgaas <bhelgaas@xxxxxxxxxx> wrote:

commit 51a660a2732c
Author: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
Date:   Thu Aug 20 00:08:15 2015 -0500

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

     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@xxxxxxxxxx
     Reported-by: Meelis Roos <mroos@xxxxxxxx>
     Reported-by: Helge Deller <deller@xxxxxx>
     Based-on-idea-by: Yinghai Lu <yinghai@xxxxxxxxxx>
     Signed-off-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

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

Yes, that is better.

Acked-by: Yinghai Lu <yinghai@xxxxxxxxxx>


Tested-by: Helge Deller <deller@xxxxxx>
  and please add:
CC: stable@xxxxxxxxxxxxxxx  # v3.19+

Helge

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux