Commit c4b1fcc3 authored by Ye Weihua's avatar Ye Weihua Committed by Wolfram Sang
Browse files

i2c: imx: Fix PM reference leak in i2c_imx_reg_slave()



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.

Reported-by: default avatarHulk Robot <hulkci@huawei.com>
Signed-off-by: default avatarYe Weihua <yeweihua4@huawei.com>
Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
parent a85c5c7a
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -801,7 +801,7 @@ static int i2c_imx_reg_slave(struct i2c_client *client)
	i2c_imx->last_slave_event = I2C_SLAVE_STOP;

	/* Resume */
	ret = pm_runtime_get_sync(i2c_imx->adapter.dev.parent);
	ret = pm_runtime_resume_and_get(i2c_imx->adapter.dev.parent);
	if (ret < 0) {
		dev_err(&i2c_imx->adapter.dev, "failed to resume i2c controller");
		return ret;