Message ID | 20221117084032.101144-1-tanghui20@huawei.com (mailing list archive) |
---|---|
State | Accepted |
Commit | cbe867685386af1f0a2648f5279f6e4c74bfd17f |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net,v5] net: mvpp2: fix possible invalid pointer dereference | expand |
Hello: This patch was applied to netdev/net.git (master) by Jakub Kicinski <kuba@kernel.org>: On Thu, 17 Nov 2022 16:40:32 +0800 you wrote: > It will cause invalid pointer dereference to priv->cm3_base behind, > if PTR_ERR(priv->cm3_base) in mvpp2_get_sram(). > > Fixes: a59d354208a7 ("net: mvpp2: enable global flow control") > Signed-off-by: Hui Tang <tanghui20@huawei.com> > --- > v1 -> v2: patch title include target > v2 -> v3: keep priv->cm3_base NULL if devm_ioremap_resource() failed > v3 -> v4: change if (priv->cm3_base) to if (base) > v4 -> v5: use the idiomatic error handling, keep success path un-indented > > [...] Here is the summary with links: - [net,v5] net: mvpp2: fix possible invalid pointer dereference https://git.kernel.org/netdev/net/c/cbe867685386 You are awesome, thank you!
diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c index d98f7e9a480e..4f3c1757620c 100644 --- a/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c +++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c @@ -7349,6 +7349,7 @@ static int mvpp2_get_sram(struct platform_device *pdev, struct mvpp2 *priv) { struct resource *res; + void __iomem *base; res = platform_get_resource(pdev, IORESOURCE_MEM, 2); if (!res) { @@ -7359,9 +7360,12 @@ static int mvpp2_get_sram(struct platform_device *pdev, return 0; } - priv->cm3_base = devm_ioremap_resource(&pdev->dev, res); + base = devm_ioremap_resource(&pdev->dev, res); + if (IS_ERR(base)) + return PTR_ERR(base); - return PTR_ERR_OR_ZERO(priv->cm3_base); + priv->cm3_base = base; + return 0; } static int mvpp2_probe(struct platform_device *pdev)
It will cause invalid pointer dereference to priv->cm3_base behind, if PTR_ERR(priv->cm3_base) in mvpp2_get_sram(). Fixes: a59d354208a7 ("net: mvpp2: enable global flow control") Signed-off-by: Hui Tang <tanghui20@huawei.com> --- v1 -> v2: patch title include target v2 -> v3: keep priv->cm3_base NULL if devm_ioremap_resource() failed v3 -> v4: change if (priv->cm3_base) to if (base) v4 -> v5: use the idiomatic error handling, keep success path un-indented --- drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)