diff mbox series

[-next] media: sunxi: sun8i-rotate: fix PM reference leak in rotate_start_streaming()

Message ID 20210409064658.90493-1-xiangyang3@huawei.com
State New
Headers show
Series [-next] media: sunxi: sun8i-rotate: fix PM reference leak in rotate_start_streaming() | expand

Commit Message

Xiang Yang April 9, 2021, 6:46 a.m. UTC
pm_runtime_get_sync will increment pm usage counter even it failed.
Forgetting to putting operation will result in reference leak here.
Fix it by replacing it with pm_runtime_resume_and_get to keep usage
counter balanced.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Xiang Yang <xiangyang3@huawei.com>
---
 .../platform/sunxi/sun8i-rotate/sun8i_rotate.c      | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jernej Škrabec April 11, 2021, 6:16 p.m. UTC | #1
Dne petek, 09. april 2021 ob 08:46:58 CEST je Xiang Yang napisal(a):
> pm_runtime_get_sync will increment pm usage counter even it failed.

> Forgetting to putting operation will result in reference leak here.

> Fix it by replacing it with pm_runtime_resume_and_get to keep usage

> counter balanced.

> 

> Reported-by: Hulk Robot <hulkci@huawei.com>

> Signed-off-by: Xiang Yang <xiangyang3@huawei.com>


Acked-by: Jernej Skrabec <jernej.skrabec@siol.net>


Best regards,
Jernej
diff mbox series

Patch

diff --git a/drivers/media/platform/sunxi/sun8i-rotate/sun8i_rotate.c b/drivers/media/platform/sunxi/sun8i-rotate/sun8i_rotate.c
index 3f81dd17755c..fbcca59a0517 100644
--- a/drivers/media/platform/sunxi/sun8i-rotate/sun8i_rotate.c
+++ b/drivers/media/platform/sunxi/sun8i-rotate/sun8i_rotate.c
@@ -494,7 +494,7 @@  static int rotate_start_streaming(struct vb2_queue *vq, unsigned int count)
 		struct device *dev = ctx->dev->dev;
 		int ret;
 
-		ret = pm_runtime_get_sync(dev);
+		ret = pm_runtime_resume_and_get(dev);
 		if (ret < 0) {
 			dev_err(dev, "Failed to enable module\n");