PCI: Call dma_debug_add_bus() for pci_bus_type from PCI core
authorChristoph Hellwig <hch@lst.de>
Mon, 30 Jul 2018 07:38:42 +0000 (09:38 +0200)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 30 Jul 2018 20:58:01 +0000 (15:58 -0500)
There is nothing arch-specific about PCI or dma-debug, so call
dma_debug_add_bus() from the PCI core just after registering the bus type.

Most of dma-debug is already generic; this just adds reporting of pending
dma-allocations on driver unload for arches other than powerpc, sh, and
x86.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc)
arch/powerpc/kernel/dma.c
arch/sh/drivers/pci/pci.c
arch/x86/kernel/pci-dma.c
drivers/pci/pci-driver.c

index 155170d..dbfc705 100644 (file)
@@ -357,9 +357,6 @@ EXPORT_SYMBOL_GPL(dma_get_required_mask);
 
 static int __init dma_init(void)
 {
-#ifdef CONFIG_PCI
-       dma_debug_add_bus(&pci_bus_type);
-#endif
 #ifdef CONFIG_IBMVIO
        dma_debug_add_bus(&vio_bus_type);
 #endif
index e5b7437..8256626 100644 (file)
@@ -160,8 +160,6 @@ static int __init pcibios_init(void)
        for (hose = hose_head; hose; hose = hose->next)
                pcibios_scanbus(hose);
 
-       dma_debug_add_bus(&pci_bus_type);
-
        pci_initialized = 1;
 
        return 0;
index ab5d9dd..43f5863 100644 (file)
@@ -155,9 +155,6 @@ static int __init pci_iommu_init(void)
 {
        struct iommu_table_entry *p;
 
-#ifdef CONFIG_PCI
-       dma_debug_add_bus(&pci_bus_type);
-#endif
        x86_init.iommu.iommu_init();
 
        for (p = __iommu_table; p < __iommu_table_end; p++) {
index c125d53..7a02f94 100644 (file)
@@ -1667,7 +1667,7 @@ static int __init pci_driver_init(void)
        if (ret)
                return ret;
 #endif
-
+       dma_debug_add_bus(&pci_bus_type);
        return 0;
 }
 postcore_initcall(pci_driver_init);