On Fri, May 22, 2020 at 6:20 PM Andy Shevchenko <[email protected]> wrote: > On Fri, May 22, 2020 at 10:46 AM <[email protected]> wrote:
... > Moreover, consider below case > > CPU1: ...somewhere in the code... > pm_runtime_get() // with success! > ...see below... > pm_runtime_put() > > CPU2: ...on parallel thread... > ret = pm_runtime_get_sync() // failed! > if (ret) > pm_runtime_put() // oi vei, we put device into sleep > > So, there is a potential issue. ...and even if it's impossible (no bugs in runtime PM core, etc) the code with put() looks suspicious. -- With Best Regards, Andy Shevchenko

