From: Greg Kroah-Hartman Date: Mon, 9 May 2022 11:05:21 +0000 (+0200) Subject: 5.4-stable patches X-Git-Tag: v4.9.313~63 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=25043bea551d2a2d6a20a7d0cb23aa10ba0ac5d7;p=thirdparty%2Fkernel%2Fstable-queue.git 5.4-stable patches added patches: net-emaclite-add-error-handling-for-of_address_to_resource.patch net-ethernet-mediatek-add-missing-of_node_put-in-mtk_sgmii_init.patch net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch --- diff --git a/queue-5.4/net-emaclite-add-error-handling-for-of_address_to_resource.patch b/queue-5.4/net-emaclite-add-error-handling-for-of_address_to_resource.patch new file mode 100644 index 00000000000..13ace885b60 --- /dev/null +++ b/queue-5.4/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 +@@ -820,10 +820,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. +@@ -833,8 +833,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); +@@ -843,6 +849,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; + } + +@@ -855,6 +862,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; + } + +@@ -867,6 +875,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-5.4/net-ethernet-mediatek-add-missing-of_node_put-in-mtk_sgmii_init.patch b/queue-5.4/net-ethernet-mediatek-add-missing-of_node_put-in-mtk_sgmii_init.patch new file mode 100644 index 00000000000..fe5b5ce9fbd --- /dev/null +++ b/queue-5.4/net-ethernet-mediatek-add-missing-of_node_put-in-mtk_sgmii_init.patch @@ -0,0 +1,31 @@ +From ff5265d45345d01fefc98fcb9ae891b59633c919 Mon Sep 17 00:00:00 2001 +From: Yang Yingliang +Date: Thu, 28 Apr 2022 14:25:43 +0800 +Subject: net: ethernet: mediatek: add missing of_node_put() in mtk_sgmii_init() + +From: Yang Yingliang + +commit ff5265d45345d01fefc98fcb9ae891b59633c919 upstream. + +The node pointer returned by of_parse_phandle() with refcount incremented, +so add of_node_put() after using it in mtk_sgmii_init(). + +Fixes: 9ffee4a8276c ("net: ethernet: mediatek: Extend SGMII related functions") +Signed-off-by: Yang Yingliang +Link: https://lore.kernel.org/r/20220428062543.64883-1-yangyingliang@huawei.com +Signed-off-by: Jakub Kicinski +Signed-off-by: Greg Kroah-Hartman +--- + drivers/net/ethernet/mediatek/mtk_sgmii.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/drivers/net/ethernet/mediatek/mtk_sgmii.c ++++ b/drivers/net/ethernet/mediatek/mtk_sgmii.c +@@ -26,6 +26,7 @@ int mtk_sgmii_init(struct mtk_sgmii *ss, + break; + + ss->regmap[i] = syscon_node_to_regmap(np); ++ of_node_put(np); + if (IS_ERR(ss->regmap[i])) + return PTR_ERR(ss->regmap[i]); + } diff --git a/queue-5.4/net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch b/queue-5.4/net-stmmac-dwmac-sun8i-add-missing-of_node_put-in-sun8i_dwmac_register_mdio_mux.patch new file mode 100644 index 00000000000..890a9fbccd3 --- /dev/null +++ b/queue-5.4/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 +@@ -879,6 +879,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-5.4/series b/queue-5.4/series index 427175e42e8..90dc4899d3f 100644 --- a/queue-5.4/series +++ b/queue-5.4/series @@ -24,3 +24,6 @@ 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 rdma-siw-fix-a-condition-race-issue-in-mpa-request-processing.patch +net-ethernet-mediatek-add-missing-of_node_put-in-mtk_sgmii_init.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