Patch "i2c: imx-lpi2c: fix reference leak when pm_runtime_get_sync fails" has been added to the 5.10-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    i2c: imx-lpi2c: fix reference leak when pm_runtime_get_sync fails

to the 5.10-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     i2c-imx-lpi2c-fix-reference-leak-when-pm_runtime_get.patch
and it can be found in the queue-5.10 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 538aabfc67546e647f321f300a08b84c75f6d289
Author: Qinglang Miao <miaoqinglang@xxxxxxxxxx>
Date:   Tue Dec 1 17:31:40 2020 +0800

    i2c: imx-lpi2c: fix reference leak when pm_runtime_get_sync fails
    
    [ Upstream commit 278e5bbdb9a94fa063c0f9bcde2479d0b8042462 ]
    
    The PM reference count is not expected to be incremented on
    return in lpi2c_imx_master_enable.
    
    However, pm_runtime_get_sync will increment the PM reference
    count even failed. Forgetting to putting operation will result
    in a reference leak here.
    
    Replace it with pm_runtime_resume_and_get to keep usage
    counter balanced.
    
    Fixes: 13d6eb20fc79 ("i2c: imx-lpi2c: add runtime pm support")
    Reported-by: Hulk Robot <hulkci@xxxxxxxxxx>
    Signed-off-by: Qinglang Miao <miaoqinglang@xxxxxxxxxx>
    Signed-off-by: Wolfram Sang <wsa@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/i2c/busses/i2c-imx-lpi2c.c b/drivers/i2c/busses/i2c-imx-lpi2c.c
index 9db6ccded5e9..8b9ba055c418 100644
--- a/drivers/i2c/busses/i2c-imx-lpi2c.c
+++ b/drivers/i2c/busses/i2c-imx-lpi2c.c
@@ -259,7 +259,7 @@ static int lpi2c_imx_master_enable(struct lpi2c_imx_struct *lpi2c_imx)
 	unsigned int temp;
 	int ret;
 
-	ret = pm_runtime_get_sync(lpi2c_imx->adapter.dev.parent);
+	ret = pm_runtime_resume_and_get(lpi2c_imx->adapter.dev.parent);
 	if (ret < 0)
 		return ret;
 



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux