From mboxrd@z Thu Jan 1 00:00:00 1970 From: Navid Emamdoost Subject: [PATCH] media: staging: tegra-vde: add missing pm_runtime_put_autosuspend Date: Tue, 2 Jun 2020 00:48:41 -0500 Message-ID: <20200602054841.15746-1-navid.emamdoost@gmail.com> Return-path: Sender: linux-kernel-owner@vger.kernel.org To: Dmitry Osipenko , Mauro Carvalho Chehab , Greg Kroah-Hartman , Thierry Reding , Jonathan Hunter , linux-media@vger.kernel.org, linux-tegra@vger.kernel.org, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org Cc: emamd001@umn.edu, wu000273@umn.edu, kjlu@umn.edu, smccaman@umn.edu, Navid Emamdoost List-Id: linux-tegra@vger.kernel.org Call to pm_runtime_get_sync increments counter even in case of failure leading to incorrect ref count. Call pm_runtime_put_autosuspend if pm_runtime_get_sync fails. Signed-off-by: Navid Emamdoost --- drivers/staging/media/tegra-vde/vde.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/staging/media/tegra-vde/vde.c b/drivers/staging/media/tegra-vde/vde.c index d3e63512a765..52cdd4a91e93 100644 --- a/drivers/staging/media/tegra-vde/vde.c +++ b/drivers/staging/media/tegra-vde/vde.c @@ -776,8 +776,10 @@ static int tegra_vde_ioctl_decode_h264(struct tegra_vde *vde, goto release_dpb_frames; ret = pm_runtime_get_sync(dev); - if (ret < 0) + if (ret < 0) { + pm_runtime_put_autosuspend(dev); goto unlock; + } /* * We rely on the VDE registers reset value, otherwise VDE -- 2.17.1