FAILED: patch "[PATCH] iio: pressure: mpl115: fix runtime PM leak on read error" failed to apply to 6.6-stable tree
Subsystems (2)
[email protected]
maintainerThe patch below does not apply to the 6.6-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.
To reproduce the conflict and resubmit, you may use the following commands:
git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.6.y
git checkout FETCH_HEAD
git cherry-pick -x fbe67ff37a6fd855a6c097f84f3738bd13d0a898
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2026071315-browbeat-obnoxious-e1ef@gregkh' --subject-prefix 'PATCH 6.6.y' 'HEAD^..'
Possible dependencies:
thanks,
greg k-h
------------------ original commit in Linus's tree ------------------
From fbe67ff37a6fd855a6c097f84f3738bd13d0a898 Mon Sep 17 00:00:00 2001
From: Biren Pandya <[email protected]>
Date: Sun, 14 Jun 2026 12:45:48 +0530
Subject: [PATCH] iio: pressure: mpl115: fix runtime PM leak on read error
mpl115_read_raw() takes a runtime PM reference with pm_runtime_get_sync() before reading the processed pressure or raw temperature, but on the read error path it returns without calling pm_runtime_put_autosuspend(). Each failed read therefore leaks a runtime PM reference and prevents the device from autosuspending.
Drop the reference before checking the return value so both the success and error paths are balanced.
drivers/iio/pressure/mpl115.c +2 -2
@@ -106,18 +106,18 @@ static int mpl115_read_raw(struct iio_dev *indio_dev,case IIO_CHAN_INFO_PROCESSED :pm_runtime_get_sync (data->dev); ret =mpl115_comp_pressure (data, val, val2); +pm_runtime_put_autosuspend (data->dev);if (ret <0 )return ret; -pm_runtime_put_autosuspend (data->dev);return IIO_VAL_INT_PLUS_MICRO ;case IIO_CHAN_INFO_RAW :pm_runtime_get_sync (data->dev);/* temperature -5.35 C / LSB, 472 LSB is 25 C */ ret =mpl115_read_temp (data); +pm_runtime_put_autosuspend (data->dev);if (ret <0 )return ret; -pm_runtime_put_autosuspend (data->dev); *val = ret >>6 ;return IIO_VAL_INT ;
Sasha Levin
maintainerPATCH 1/1 iio: pressure: mpl115: fix runtime PM leak on read error
From: Biren Pandya <[email protected]>
[ Upstream commit fbe67ff37a6fd855a6c097f84f3738bd13d0a898 ]
mpl115_read_raw() takes a runtime PM reference with pm_runtime_get_sync() before reading the processed pressure or raw temperature, but on the read error path it returns without calling pm_runtime_put_autosuspend(). Each failed read therefore leaks a runtime PM reference and prevents the device from autosuspending.
Drop the reference before checking the return value so both the success and error paths are balanced.
--- drivers/iio/pressure/mpl115.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/iio/pressure/mpl115.c +4 -4
@@ -106,20 +106,20 @@ static int mpl115_read_raw(struct iio_dev *indio_dev,case IIO_CHAN_INFO_PROCESSED :pm_runtime_get_sync (data->dev); ret =mpl115_comp_pressure (data, val, val2); -if (ret <0 ) -return ret;pm_runtime_mark_last_busy (data->dev);pm_runtime_put_autosuspend (data->dev); +if (ret <0 ) +return ret;return IIO_VAL_INT_PLUS_MICRO ;case IIO_CHAN_INFO_RAW :pm_runtime_get_sync (data->dev);/* temperature -5.35 C / LSB, 472 LSB is 25 C */ ret =mpl115_read_temp (data); -if (ret <0 ) -return ret;pm_runtime_mark_last_busy (data->dev);pm_runtime_put_autosuspend (data->dev); +if (ret <0 ) +return ret; *val = ret >>6 ;return IIO_VAL_INT ;
Signature · 1 line
2.53.0
Sasha Levin
maintainerPATCH 1/1 iio: pressure: mpl115: fix runtime PM leak on read error
In reply to [email protected]From: Biren Pandya <[email protected]>
[ Upstream commit fbe67ff37a6fd855a6c097f84f3738bd13d0a898 ]
mpl115_read_raw() takes a runtime PM reference with pm_runtime_get_sync() before reading the processed pressure or raw temperature, but on the read error path it returns without calling pm_runtime_put_autosuspend(). Each failed read therefore leaks a runtime PM reference and prevents the device from autosuspending.
Drop the reference before checking the return value so both the success and error paths are balanced.
--- drivers/iio/pressure/mpl115.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
drivers/iio/pressure/mpl115.c +4 -4
@@ -106,20 +106,20 @@ static int mpl115_read_raw(struct iio_dev *indio_dev,case IIO_CHAN_INFO_PROCESSED :pm_runtime_get_sync (data->dev); ret =mpl115_comp_pressure (data, val, val2); -if (ret <0 ) -return ret;pm_runtime_mark_last_busy (data->dev);pm_runtime_put_autosuspend (data->dev); +if (ret <0 ) +return ret;return IIO_VAL_INT_PLUS_MICRO ;case IIO_CHAN_INFO_RAW :pm_runtime_get_sync (data->dev);/* temperature -5.35 C / LSB, 472 LSB is 25 C */ ret =mpl115_read_temp (data); -if (ret <0 ) -return ret;pm_runtime_mark_last_busy (data->dev);pm_runtime_put_autosuspend (data->dev); +if (ret <0 ) +return ret; *val = ret >>6 ;return IIO_VAL_INT ;
Signature · 1 line
2.53.0