mirror of
https://github.com/King-Of-Knights/openwrt-6.x.git
synced 2025-12-16 16:21:39 +00:00
Backport upstream minor fixed for NPU handling that might result in kernel panic or handle leak. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
38 lines
1.4 KiB
Diff
38 lines
1.4 KiB
Diff
From 05e090620bacf317020f9591cfff8926093380bd Mon Sep 17 00:00:00 2001
|
|
From: Dan Carpenter <dan.carpenter@linaro.org>
|
|
Date: Fri, 24 Oct 2025 14:23:35 +0300
|
|
Subject: [PATCH] net: airoha: Fix a copy and paste bug in probe()
|
|
|
|
This code has a copy and paste bug where it accidentally checks "if (err)"
|
|
instead of checking if "xsi_rsts" is NULL. Also, as a free bonus, I
|
|
changed the allocation from kzalloc() to kcalloc() which is a kernel
|
|
hardening measure to protect against integer overflows.
|
|
|
|
Fixes: 5863b4e065e2 ("net: airoha: Add airoha_eth_soc_data struct")
|
|
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
|
|
Acked-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
|
Link: https://patch.msgid.link/aPtht6y5DRokn9zv@stanley.mountain
|
|
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|
---
|
|
drivers/net/ethernet/airoha/airoha_eth.c | 8 ++++----
|
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
--- a/drivers/net/ethernet/airoha/airoha_eth.c
|
|
+++ b/drivers/net/ethernet/airoha/airoha_eth.c
|
|
@@ -2990,11 +2990,11 @@ static int airoha_probe(struct platform_
|
|
return err;
|
|
}
|
|
|
|
- xsi_rsts = devm_kzalloc(eth->dev,
|
|
- eth->soc->num_xsi_rsts * sizeof(*xsi_rsts),
|
|
+ xsi_rsts = devm_kcalloc(eth->dev,
|
|
+ eth->soc->num_xsi_rsts, sizeof(*xsi_rsts),
|
|
GFP_KERNEL);
|
|
- if (err)
|
|
- return err;
|
|
+ if (!xsi_rsts)
|
|
+ return -ENOMEM;
|
|
|
|
eth->xsi_rsts = xsi_rsts;
|
|
for (i = 0; i < eth->soc->num_xsi_rsts; i++)
|