soc: amlogic: canvas: add missing put_device() call in meson_canvas_get()
[ Upstream commit5.4-rM2-2.2.x-imx-squashed28f851e6af
] if of_find_device_by_node() succeed, meson_canvas_get() doesn't have a corresponding put_device(). Thus add put_device() to fix the exception handling for this function implementation. Fixes:382f8be045
("soc: amlogic: canvas: Fix meson_canvas_get when probe failed") Signed-off-by: Yu Kuai <yukuai3@huawei.com> Reviewed-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com> Link: https://lore.kernel.org/r/20201117011322.522477-1-yukuai3@huawei.com Signed-off-by: Sasha Levin <sashal@kernel.org>
parent
8424a5b661
commit
09347a537c
|
@ -72,8 +72,10 @@ struct meson_canvas *meson_canvas_get(struct device *dev)
|
|||
* current state, this driver probe cannot return -EPROBE_DEFER
|
||||
*/
|
||||
canvas = dev_get_drvdata(&canvas_pdev->dev);
|
||||
if (!canvas)
|
||||
if (!canvas) {
|
||||
put_device(&canvas_pdev->dev);
|
||||
return ERR_PTR(-EINVAL);
|
||||
}
|
||||
|
||||
return canvas;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue