Re: [PATCH v2] block: Keep RPM_ACTIVE in blk_pre_runtime_resume() when already active
From: Bart Van Assche
Date: Wed Nov 04 2026 - 16:02:07 EST
On 11/4/26 3:27 AM, Stanley Jhu wrote:
Differences from v1:
- Move SUSPENDED -> RESUMING explicitly in blk_pre_runtime_resume() and
clear pm_only only for RPM_RESUMING in blk_post_runtime_resume()
Hi Stanley,
Thank you for having addressed my concerns. There is an existing
issues that you may want to address with a future patch: Queue ACTIVE,
device suspended: after a failed resume, the queue is ACTIVE with
pm_only == 0 while the device is still RPM_SUSPENDED. So
blk_pm_resume_queue() never asks for a resume, and normal I/O goes to
a device the PM core thinks is suspended. A retry only happens if
something else calls pm_runtime_get*(). Commit 6e1fcab00a23 introduced
this behavior on purpose.
Thanks,
Bart.