Thread (25 messages) 25 messages, 6 authors, 2024-08-21

Re: [PATCH 0/3] cpuidle: updates related to tick_broadcast_enter() failures

From: Preeti U Murthy <hidden>
Date: 2015-05-11 05:21:13
Also in: linux-pm, lkml

On 05/10/2015 04:45 AM, Rafael J. Wysocki wrote:
On Saturday, May 09, 2015 10:33:05 PM Rafael J. Wysocki wrote:
quoted
On Saturday, May 09, 2015 10:11:41 PM Rafael J. Wysocki wrote:
quoted
On Saturday, May 09, 2015 11:19:16 AM Preeti U Murthy wrote:
quoted
Hi Rafael,

On 05/08/2015 07:48 PM, Rafael J. Wysocki wrote:
[cut]
quoted
quoted
quoted
 
+	/* Take note of the planned idle state. */
+	idle_set_state(smp_processor_id(), target_state);
And I wouldn't do this either.

The behavior here is pretty much as though the driver demoted the state chosen
by the governor and we don't call idle_set_state() again in those cases.
Why is this wrong?
It is not "wrong", but incomplete, because demotions done by the cpuidle driver
should also be taken into account in the same way.

But I'm seeing that the recent patch of mine that made cpuidle_enter_state()
call default_idle_call() was a mistake, because it might confuse find_idlest_cpu()
significantly as to what state the CPU is in.  I'll drop that one for now.
OK, done.

So after I've dropped it I think we need to do three things:
(1) Move the idle_set_state() calls to cpuidle_enter_state().
(2) Make cpuidle_enter_state() call default_idle_call() again, but this time
    do that *before* it has called idle_set_state() for target_state.
(3) Introduce demotion as per my last patch.

Let me cut patches for that.
Done as per the above and the patches follow in replies to this messge.

All on top of the current linux-next branch of the linux-pm.git tree.
The patches look good. Based and tested these patches on top of
linux-pm/linux-next (They are not yet in the branch as far as I can see.)

All patches in this series
Reviewed and Tested-by: Preeti U Murthy [off-list ref]
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help