[REGRESSION] PM / sleep: Unbalanced suspend/resume on late abort causes data abort
Rafael J. Wysocki
rafael at kernel.org
Mon Nov 17 08:59:05 PST 2025
Hi,
On Mon, Nov 17, 2025 at 10:31 AM Rose Wu <ya-jou.wu at mediatek.com> wrote:
>
> Hi Rafael and All,
>
> I am reporting a regression introduced by the commit
> 443046d1ad66607f324c604b9fbdf11266fa8aad (PM: sleep: Make suspend of
> devices more asynchronous), which can lead to a kernel panic (data
> abort) if a late suspend aborts.
> The commit modifies list handling during suspend. When a device suspend
> aborts at the "late" stage, `dpm_suspended_list` is spliced into
> `dpm_late_early_list`.
> This creates an imbalance. Devices on this list that had not yet
> executed `pm_runtime_disable()` in `device_suspend_late()` are now
> incorrectly subjected to `pm_runtime_enable()` during the subsequent
> `device_resume_early()` sequence.
Ah, obviously.
Does the attached patch (that should apply on top of 6.18-rc6) help?
If this patch doesn't apply to your kernel, making an analogous change
to it should be straightforward enough.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pm-sleep-fix-early-resume.patch
Type: text/x-patch
Size: 371 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-mediatek/attachments/20251117/9edb1e72/attachment.bin>
More information about the Linux-mediatek
mailing list