In case of_device_get_match_data fails, the fix return -ENOMEM
to avoid the NULL pointer dereference.
Signed-off-by: Kangjie Lu <kjlu@xxxxxxx>
---
drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c
index 3256e5cbad27..344ead5949b1 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c
@@ -485,6 +485,8 @@ static int dwc_eth_dwmac_remove(struct platform_device *pdev)
int err;
data = of_device_get_match_data(&pdev->dev);
+ if (!data)
+ return -EINVAL;
err = stmmac_dvr_remove(&pdev->dev);
if (err < 0)