Thread (14 messages) 14 messages, 4 authors, 2018-02-15

Re: [PATCH] cpufreq: skip cpufreq resume if it's not suspended

From: Rafael J. Wysocki <hidden>
Date: 2018-02-15 22:08:32
Also in: lkml

On Thursday, February 15, 2018 10:27:10 PM CET Saravana Kannan wrote:
On 02/05/2018 01:05 AM, Viresh Kumar wrote:
quoted
On 05-02-18, 09:50, Rafael J. Wysocki wrote:
quoted
By design (which I admit may be confusing) it should be fine to call
dpm_resume_end() after a failing dpm_suspend_start(), whatever the reason
for the failure is.  cpufreq_suspend/resume() don't take that into account,
everybody else does.
Hmm, I see. Can't do much then, just fix the only broken piece of code :)
Sorry for the late reply, this email didn't get filtered into the right 
folder.

I think the design of dpm_suspend_start() and dpm_resume_end() generally 
works fine because we seem to keep track of what devices have been 
suspended so far (in the dpm_suspended_list) and call resume only of 
those. So, why isn't the right fix to have cpufreq get put into that 
list?
Because it is more complicated?
Instead of just always call it on the resume path even if it 
wasn't suspended? That seems to be the real issue.

So, we should either have dpm_suspend/resume() have a flag to keep track 
of if cpufreq_suspend/resume() was called and make sure they are called 
in proper pairs.
Why?
Or have cpufreq register in a way that gets it put in 
the suspend/resume list.

I'd still like to NACK this change.
It's gone in already, sorry.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help