Re: [PATCH] PCI: iproc: Fix NULL pointer dereference for BCMA

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

 



Hi Lorenzo,

On 1/11/2018 9:15 AM, Lorenzo Pieralisi wrote:
On Tue, Jan 09, 2018 at 11:45:40AM -0800, Ray Jui wrote:
With the inbound DMA mapping supported added, the iProc PCIe driver
parses DT property "dma-ranges" through call to
"of_pci_dma_range_parser_init". In the case of BCMA, this results in a
NULL pointer deference due to a missing of_node.

Fix this by adding a guard in pcie-iproc-platform.c to only enable the
inbound DMA mapping logic when DT property "dma-ranges" is present

fixes: dd9d4e7498de3 ("PCI: iproc: Add inbound DMA mapping support")

s/fixes/Fixes >

Will fix.

Reported-by: Rafał Miłecki <rafal@xxxxxxxxxx>
Signed-off-by: Ray Jui <ray.jui@xxxxxxxxxxxx>
Tested-by: Rafał Miłecki <rafal@xxxxxxxxxx>
Cc: <stable@xxxxxxxxxxxxxxx> # 4.10+
---
  drivers/pci/host/pcie-iproc-platform.c | 3 +++
  drivers/pci/host/pcie-iproc.c          | 8 +++++---
  drivers/pci/host/pcie-iproc.h          | 2 ++
  3 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/drivers/pci/host/pcie-iproc-platform.c b/drivers/pci/host/pcie-iproc-platform.c
index a5073a9..235c545 100644
--- a/drivers/pci/host/pcie-iproc-platform.c
+++ b/drivers/pci/host/pcie-iproc-platform.c
@@ -92,6 +92,9 @@ static int iproc_pcie_pltfm_probe(struct platform_device *pdev)
  		pcie->need_ob_cfg = true;
  	}
+ if (of_property_read_bool(np, "dma-ranges"))
+		pcie->need_ib_cfg = true;

Nit:
	pci->need_ib_cfg = of_property_read_bool(np, "dma-ranges"));

will do. Add a comment to it to explain why it is needed.

Will fix.


Please update the patch, send a v2 and I will merge it.

Okay will send out v2 with comments from you addressed. Thanks!


Thanks,
Lorenzo




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]