|
|
@@ -0,0 +1,28 @@
|
|
|
+From 7c83e28f10830aa5105c25eaabe890e3adac36aa Mon Sep 17 00:00:00 2001
|
|
|
+From: Daniel Golle <[email protected]>
|
|
|
+Date: Tue, 9 May 2023 03:20:06 +0200
|
|
|
+Subject: [PATCH] net: ethernet: mtk_eth_soc: fix NULL pointer dereference
|
|
|
+
|
|
|
+Check for NULL pointer to avoid kernel crashing in case of missing WO
|
|
|
+firmware in case only a single WEDv2 device has been initialized, e.g. on
|
|
|
+MT7981 which can connect just one wireless frontend.
|
|
|
+
|
|
|
+Fixes: 86ce0d09e424 ("net: ethernet: mtk_eth_soc: use WO firmware for MT7981")
|
|
|
+Signed-off-by: Daniel Golle <[email protected]>
|
|
|
+Reviewed-by: Simon Horman <[email protected]>
|
|
|
+Signed-off-by: David S. Miller <[email protected]>
|
|
|
+---
|
|
|
+ drivers/net/ethernet/mediatek/mtk_wed.c | 2 +-
|
|
|
+ 1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
+
|
|
|
+--- a/drivers/net/ethernet/mediatek/mtk_wed.c
|
|
|
++++ b/drivers/net/ethernet/mediatek/mtk_wed.c
|
|
|
+@@ -647,7 +647,7 @@ __mtk_wed_detach(struct mtk_wed_device *
|
|
|
+ BIT(hw->index), BIT(hw->index));
|
|
|
+ }
|
|
|
+
|
|
|
+- if (!hw_list[!hw->index]->wed_dev &&
|
|
|
++ if ((!hw_list[!hw->index] || !hw_list[!hw->index]->wed_dev) &&
|
|
|
+ hw->eth->dma_dev != hw->eth->dev)
|
|
|
+ mtk_eth_set_dma_device(hw->eth, hw->eth->dev);
|
|
|
+
|