diff options
| author | Yang Yingliang <[email protected]> | 2022-04-29 08:07:40 +0000 |
|---|---|---|
| committer | Bjorn Helgaas <[email protected]> | 2022-10-05 22:30:55 +0000 |
| commit | 94f0b955e4ed610e4ee93ee72b88c4415bed685d (patch) | |
| tree | 880aacdb8810f0b2eaddf3303a056fe4d0f4ff09 | |
| parent | PCI: qcom-ep: Add support for SM8450 SoC (diff) | |
| download | kernel-94f0b955e4ed610e4ee93ee72b88c4415bed685d.tar.gz kernel-94f0b955e4ed610e4ee93ee72b88c4415bed685d.zip | |
PCI: qcom-ep: Check platform_get_resource_byname() return value
If platform_get_resource_byname() fails, 'mmio_res' will be set to NULL
pointer, which causes a NULL pointer dereference when it is used in
qcom_pcie_perst_deassert().
Check the return value to prevent it.
Link: https://lore.kernel.org/r/[email protected]
Fixes: f55fee56a631 ("PCI: qcom-ep: Add Qualcomm PCIe Endpoint controller driver")
Signed-off-by: Yang Yingliang <[email protected]>
Signed-off-by: Lorenzo Pieralisi <[email protected]>
Signed-off-by: Bjorn Helgaas <[email protected]>
Reviewed-by: Andrew Halaney <[email protected]>
| -rw-r--r-- | drivers/pci/controller/dwc/pcie-qcom-ep.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/pci/controller/dwc/pcie-qcom-ep.c b/drivers/pci/controller/dwc/pcie-qcom-ep.c index 464e5ca638be..6d0d1b759ca2 100644 --- a/drivers/pci/controller/dwc/pcie-qcom-ep.c +++ b/drivers/pci/controller/dwc/pcie-qcom-ep.c @@ -474,6 +474,11 @@ static int qcom_pcie_ep_get_io_resources(struct platform_device *pdev, pcie_ep->mmio_res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "mmio"); + if (!pcie_ep->mmio_res) { + dev_err(dev, "Failed to get mmio resource\n"); + return -EINVAL; + } + pcie_ep->mmio = devm_pci_remap_cfg_resource(dev, pcie_ep->mmio_res); if (IS_ERR(pcie_ep->mmio)) return PTR_ERR(pcie_ep->mmio); |
