net: ethernet: mtk_eth_wed: add missing put_device() in mtk_wed_add_hw()
After calling get_device() in mtk_wed_add_hw(), in error path, put_device() needs be called. Fixes: 804775dfc288 ("net: ethernet: mtk_eth_soc: add support for Wireless Ethernet Dispatch (WED)") Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b3d0d98179
commit
9d4f20a476
@ -1077,11 +1077,11 @@ void mtk_wed_add_hw(struct device_node *np, struct mtk_eth *eth,
|
||||
get_device(&pdev->dev);
|
||||
irq = platform_get_irq(pdev, 0);
|
||||
if (irq < 0)
|
||||
return;
|
||||
goto err_put_device;
|
||||
|
||||
regs = syscon_regmap_lookup_by_phandle(np, NULL);
|
||||
if (IS_ERR(regs))
|
||||
return;
|
||||
goto err_put_device;
|
||||
|
||||
rcu_assign_pointer(mtk_soc_wed_ops, &wed_ops);
|
||||
|
||||
@ -1124,8 +1124,14 @@ void mtk_wed_add_hw(struct device_node *np, struct mtk_eth *eth,
|
||||
|
||||
hw_list[index] = hw;
|
||||
|
||||
mutex_unlock(&hw_lock);
|
||||
|
||||
return;
|
||||
|
||||
unlock:
|
||||
mutex_unlock(&hw_lock);
|
||||
err_put_device:
|
||||
put_device(&pdev->dev);
|
||||
}
|
||||
|
||||
void mtk_wed_exit(void)
|
||||
|
Loading…
x
Reference in New Issue
Block a user