Commit 9d4f20a4 authored by Yang Yingliang's avatar Yang Yingliang Committed by David S. Miller
Browse files

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: 804775df ("net: ethernet: mtk_eth_soc: add support for Wireless Ethernet Dispatch (WED)")
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent b3d0d981
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -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)