On Sun, Jun 14, 2020 at 11:08 AM Wolfram Sang <wsa@xxxxxxxxxx> wrote: > > Hi Linux-PM, > > both in the I2C subsystem and also for Renesas drivers I maintain, I am > starting to get boilerplate patches doing some pm_runtime_put_* variant > because a failing pm_runtime_get is supposed to increase the ref > counters? Really? Yes. Really. pm_runtime_get*() have been doing this forever, because the majority of their users do something like pm_runtime_get*() ... pm_runtime_put*() without checking the return values and they don't need to worry about the refcounts, which wouldn't be possible otherwise. > This feels wrong and unintuitive to me. I expect there > has been a discussion around it but I couldn't find it. I wonder why we > don't fix the code where the incremented refcount is expected for some > reason. > > Can I have some pointers please? The behavior is actually documented in Documentation/power/runtime_pm.rst and I'm working on kerneldoc comments for runtime PM functions in general to make it a bit more clear. Cheers!