On Wed, 25 Jun 2025 at 21:25, Rafael J. Wysocki <rjw@xxxxxxxxxxxxx> wrote: > > Hi Everyone, > > This series addresses a couple of issues related to the integration of runtime > PM with system sleep I was talking about at the OSMP-summit 2025: > > https://lwn.net/Articles/1021332/ > > Most importantly, DPM_FLAG_SMART_SUSPEND cannot be used along with > pm_runtime_force_suspend/resume() due to some conflicting expectations > about the handling of device runtime PM status between these functions > and the PM core. > > Also pm_runtime_force_suspend/resume() currently cannot be used in PCI > drivers and in drivers that collaborate with the general ACPI PM domain > because they both don't expect their mid-layer runtime PM callbacks to > be invoked during system-wide suspend and resume. > > Patch [1/9] is a preparatory cleanup changing the code to use 'true' and > 'false' as needs_force_resume flag values for consistency. > > Patch [2/9] makes pm_runtime_force_suspend() check needs_force_resume along > with the device's runtime PM status upfront, and bail out if it is set, > which allows runtime PM status updates to be eliminated from both that function > and pm_runtime_force_resume(). > > Patch [3/9] causes the smart_suspend flag to be taken into account by > pm_runtime_force_resume() which allows it to resume devices with smart_suspend > set whose runtime PM status has been changed to RPM_ACTIVE by the PM core at > the beginning of system resume. After this patch, drivers that use > pm_runtime_force_suspend/resume() can also set DPM_FLAG_SMART_SUSPEND which > may be useful, for example, if devices handled by them are involved in > dependency chains with other devices setting DPM_FLAG_SMART_SUSPEND. > > The next two patches, [4-5/9], put pm_runtime_force_suspend/resume() > and needs_force_resume under CONFIG_PM_SLEEP for consistency and also > because using them outside system-wide PM transitions really doesn't make > sense. > > Patch [6/9] makes the code for getting a runtime PM callback for a device > a bit more straightforward in preparation for the subsequent changes. I can't find this one. Seems like you did not submit it. Perhaps make a resend and fixup the patch-numbering too? [...] Kind regards Uffe