drm/tegra: Fix reference leak when pm_runtime_get_sync() fails
authorQinglang Miao <miaoqinglang@huawei.com>
Tue, 1 Dec 2020 12:56:31 +0000 (20:56 +0800)
committerThierry Reding <treding@nvidia.com>
Fri, 15 Jan 2021 16:24:51 +0000 (17:24 +0100)
commitdcdfe2712b68f1e9dbf4f1a96ad59b80e5cc0ef7
treee0d0adf29d399170db19f54d8145169fdf83fb29
parent3ef170c25b974022b1ebec800e810fbc4b6fb06a
drm/tegra: Fix reference leak when pm_runtime_get_sync() fails

The PM reference count is not expected to be incremented on return in
these Tegra functions.

However, pm_runtime_get_sync() will increment the PM reference count
even on failure. Forgetting to put the reference again will result in
a leak.

Replace it with pm_runtime_resume_and_get() to keep the usage counter
balanced.

Fixes: fd67e9c6ed5a ("drm/tegra: Do not implement runtime PM")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com>
Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/gpu/drm/tegra/dc.c
drivers/gpu/drm/tegra/dsi.c
drivers/gpu/drm/tegra/hdmi.c
drivers/gpu/drm/tegra/hub.c
drivers/gpu/drm/tegra/sor.c
drivers/gpu/drm/tegra/vic.c