From: Greg Kroah-Hartman Date: Mon, 9 May 2022 11:04:01 +0000 (+0200) Subject: 4.19-stable patches X-Git-Tag: v4.9.313~65 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=2563526f2550773ca82cbea4ab9907866532feff;p=thirdparty%2Fkernel%2Fstable-queue.git 4.19-stable patches added patches: net-emaclite-add-error-handling-for-of_address_to_resource.patch net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch --- diff --git a/queue-4.19/net-emaclite-add-error-handling-for-of_address_to_resource.patch b/queue-4.19/net-emaclite-add-error-handling-for-of_address_to_resource.patch new file mode 100644 index 00000000000..8434bf9a0c5 --- /dev/null +++ b/queue-4.19/net-emaclite-add-error-handling-for-of_address_to_resource.patch @@ -0,0 +1,77 @@ +From 7a6bc33ab54923d325d9a1747ec9652c4361ebd1 Mon Sep 17 00:00:00 2001 +From: Shravya Kumbham +Date: Mon, 2 May 2022 12:57:50 +0530 +Subject: net: emaclite: Add error handling for of_address_to_resource() + +From: Shravya Kumbham + +commit 7a6bc33ab54923d325d9a1747ec9652c4361ebd1 upstream. + +check the return value of of_address_to_resource() and also add +missing of_node_put() for np and npp nodes. + +Fixes: e0a3bc65448c ("net: emaclite: Support multiple phys connected to one MDIO bus") +Addresses-Coverity: Event check_return value. +Signed-off-by: Shravya Kumbham +Signed-off-by: Radhey Shyam Pandey +Signed-off-by: Paolo Abeni +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/ethernet/xilinx/xilinx_emaclite.c | 15 ++++++++++++--- + 1 file changed, 12 insertions(+), 3 deletions(-) + +--- a/drivers/net/ethernet/xilinx/xilinx_emaclite.c ++++ b/drivers/net/ethernet/xilinx/xilinx_emaclite.c +@@ -827,10 +827,10 @@ static int xemaclite_mdio_write(struct m + static int xemaclite_mdio_setup(struct net_local *lp, struct device *dev) + { + struct mii_bus *bus; +- int rc; + struct resource res; + struct device_node *np = of_get_parent(lp->phy_node); + struct device_node *npp; ++ int rc, ret; + + /* Don't register the MDIO bus if the phy_node or its parent node + * can't be found. +@@ -840,8 +840,14 @@ static int xemaclite_mdio_setup(struct n + return -ENODEV; + } + npp = of_get_parent(np); +- +- of_address_to_resource(npp, 0, &res); ++ ret = of_address_to_resource(npp, 0, &res); ++ of_node_put(npp); ++ if (ret) { ++ dev_err(dev, "%s resource error!\n", ++ dev->of_node->full_name); ++ of_node_put(np); ++ return ret; ++ } + if (lp->ndev->mem_start != res.start) { + struct phy_device *phydev; + phydev = of_phy_find_device(lp->phy_node); +@@ -850,6 +856,7 @@ static int xemaclite_mdio_setup(struct n + "MDIO of the phy is not registered yet\n"); + else + put_device(&phydev->mdio.dev); ++ of_node_put(np); + return 0; + } + +@@ -862,6 +869,7 @@ static int xemaclite_mdio_setup(struct n + bus = mdiobus_alloc(); + if (!bus) { + dev_err(dev, "Failed to allocate mdiobus\n"); ++ of_node_put(np); + return -ENOMEM; + } + +@@ -874,6 +882,7 @@ static int xemaclite_mdio_setup(struct n + bus->parent = dev; + + rc = of_mdiobus_register(bus, np); ++ of_node_put(np); + if (rc) { + dev_err(dev, "Failed to register mdio bus.\n"); + goto err_register; diff --git a/queue-4.19/net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch b/queue-4.19/net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch new file mode 100644 index 00000000000..f34c9b2b3e5 --- /dev/null +++ b/queue-4.19/net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch @@ -0,0 +1,32 @@ +From 1a15267b7be77e0792cf0c7b36ca65c8eb2df0d8 Mon Sep 17 00:00:00 2001 +From: Yang Yingliang +Date: Thu, 28 Apr 2022 17:57:16 +0800 +Subject: net: stmmac: dwmac-sun8i: add missing of_node_put() in sun8i_dwmac_register_mdio_mux() + +From: Yang Yingliang + +commit 1a15267b7be77e0792cf0c7b36ca65c8eb2df0d8 upstream. + +The node pointer returned by of_get_child_by_name() with refcount incremented, +so add of_node_put() after using it. + +Fixes: 634db83b8265 ("net: stmmac: dwmac-sun8i: Handle integrated/external MDIOs") +Reported-by: Hulk Robot +Signed-off-by: Yang Yingliang +Link: https://lore.kernel.org/r/20220428095716.540452-1-yangyingliang@huawei.com +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c ++++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c +@@ -873,6 +873,7 @@ static int sun8i_dwmac_register_mdio_mux + + ret = mdio_mux_init(priv->device, mdio_mux, mdio_mux_syscon_switch_fn, + &gmac->mux_handle, priv, priv->mii); ++ of_node_put(mdio_mux); + return ret; + } + diff --git a/queue-4.19/series b/queue-4.19/series index 19bcc367c88..70252ffafd9 100644 --- a/queue-4.19/series +++ b/queue-4.19/series @@ -72,3 +72,5 @@ nfc-nfcmrvl-main-reorder-destructive-operations-in-nfcmrvl_nci_unregister_dev-to nfc-netlink-fix-sleep-in-atomic-bug-when-firmware-download-timeout.patch hwmon-adt7470-fix-warning-on-module-removal.patch asoc-dmaengine-restore-null-prepare_slave_config-callback.patch +net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch +net-emaclite-add-error-handling-for-of_address_to_resource.patch