]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
PCI: keystone: Fix if-statement expression in ks_pcie_quirk()
authorDan Carpenter <dan.carpenter@linaro.org>
Fri, 19 Jul 2024 23:53:26 +0000 (18:53 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 4 Oct 2024 14:33:05 +0000 (16:33 +0200)
[ Upstream commit 6188a1c762eb9bbd444f47696eda77a5eae6207a ]

This code accidentally uses && where || was intended.  It potentially
results in a NULL dereference.

Thus, fix the if-statement expression to use the correct condition.

Fixes: 86f271f22bbb ("PCI: keystone: Add workaround for Errata #i2037 (AM65x SR 1.0)")
Link: https://lore.kernel.org/linux-pci/1b762a93-e1b2-4af3-8c04-c8843905c279@stanley.mountain
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
[kwilczynski: commit log]
Signed-off-by: Krzysztof WilczyƄski <kwilczynski@kernel.org>
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Reviewed-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/pci/controller/dwc/pci-keystone.c

index 483c95406513533d313e61bde82a00a8aad0b0d8..d911f0e521da04252b927e88cda47ecf1e3ede91 100644 (file)
@@ -577,7 +577,7 @@ static void ks_pcie_quirk(struct pci_dev *dev)
         */
        if (pci_match_id(am6_pci_devids, bridge)) {
                bridge_dev = pci_get_host_bridge_device(dev);
-               if (!bridge_dev && !bridge_dev->parent)
+               if (!bridge_dev || !bridge_dev->parent)
                        return;
 
                ks_pcie = dev_get_drvdata(bridge_dev->parent);