linux-brain/drivers/gpu/drm/msm/dsi
Christophe JAILLET 05e5b16b79 drm/msm/dsi: Fix some reference counted resource leaks
[ Upstream commit 6977cc89c87506ff17e6c05f0e37f46752256e82 ]

'of_find_device_by_node()' takes a reference that must be released when
not needed anymore.
This is expected to be done in 'dsi_destroy()'.

However, there are 2 issues in 'dsi_get_phy()'.

First, if 'of_find_device_by_node()' succeeds but 'platform_get_drvdata()'
returns NULL, 'msm_dsi->phy_dev' will still be NULL, and the reference
won't be released in 'dsi_destroy()'.

Secondly, as 'of_find_device_by_node()' already takes a reference, there is
no need for an additional 'get_device()'.

Move the assignment to 'msm_dsi->phy_dev' a few lines above and remove the
unneeded 'get_device()' to solve both issues.

Fixes: ec31abf668 ("drm/msm/dsi: Separate PHY to another platform device")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/f15bc57648a00e7c99f943903468a04639d50596.1628241097.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Rob Clark <robdclark@chromium.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-09-15 09:47:34 +02:00
..
phy drm/msm/dsi: Correct io_start for MSM8994 (20nm PHY) 2021-03-04 10:26:37 +01:00
pll drm/msm/dsi_pll_10nm: restore VCO rate during restore_state 2020-12-30 11:51:04 +01:00
dsi_cfg.c Merge tag 'drm-msm-next-2019-06-25' of https://gitlab.freedesktop.org/drm/msm into drm-next 2019-06-28 10:16:40 +10:00
dsi_cfg.h Merge tag 'drm-msm-next-2019-06-25' of https://gitlab.freedesktop.org/drm/msm into drm-next 2019-06-28 10:16:40 +10:00
dsi_host.c drm/msm/dsi: Implement reset correctly 2019-10-11 14:04:31 -04:00
dsi_manager.c drm/msm/dsi: save pll state before dsi host is powered off 2020-03-12 13:00:12 +01:00
dsi.c drm/msm/dsi: Fix some reference counted resource leaks 2021-09-15 09:47:34 +02:00
dsi.h Merge tag 'drm-msm-next-2019-06-25' of https://gitlab.freedesktop.org/drm/msm into drm-next 2019-06-28 10:16:40 +10:00
dsi.xml.h drm/msm: update generated headers 2018-08-10 18:49:18 -04:00
mmss_cc.xml.h drm/msm: update generated headers 2018-08-10 18:49:18 -04:00
sfpb.xml.h drm/msm: update generated headers 2018-08-10 18:49:18 -04:00