Skip to contentSkip to conversation

New: Reduced frequency window for conservative governor

Bug 177171 [email protected] 1 participant 11 messages Oct 10, 2016 – Oct 14, 2016

lore
Share & tools
lore

[email protected]

author Acked-by Viresh Kumar
#0 lore raw

https://bugzilla.kernel.org/show_bug.cgi?id=177171

Bug ID: 177171
Summary: Reduced frequency window for conservative governor
Product: Power Management
Version: 2.5
Kernel Version: 4.8
Hardware: All
OS: Linux
Tree: Mainline
Status: NEW
Severity: normal
Priority: P1
Component: cpufreq
Assignee: [email protected]
Reporter: [email protected]
Regression: No

Hello.

Since 4.8 the conservative governor has a reduced frequency window on my machine (ThinkPad X250), despite correct values for scaling_{min,max}_freq

$ cat /sys/devices/system/cpu/cpufreq/policy0/scaling_{min,max}_freq
500000
2200000

The actual window became from 2000000 to 2200000 with accordingly more heating and more cpu fan activations, which is not optimal.

I have bisected the problem to this commit:

commit d352cf47d93e39494b44b792cca8d35a3a0bd9b3

Author: Rafael J. Wysocki <[email protected]>
Date:   Mon Jun 13 23:33:49 2016 +0200

cpufreq: conservative: Do not use transition notifications

The conservative governor registers a transition notifier so it can update its internal requested_freq value if it falls out of the policy->min...policy->max range, but requested_freq is not really necessary.

That value is used to track the frequency requested by the governor previously, but policy->cur can be used instead of it and then the governor will not have to worry about updating the tracked value when the current frequency changes independently (for example, as a result of min or max changes).

Accodringly, drop requested_freq from struct cs_policy_dbs_info and modify cs_dbs_timer() to use policy->cur instead of it. While at it, notice that __cpufreq_driver_target() clamps its target_freq argument between policy->min and policy->max, so the callers of it don't have to do that and make additional changes in cs_dbs_timer() in accordance with that.

After these changes the transition notifier used by the conservative governor is not necessary any more, so drop it, which also makes it possible to drop the struct cs_governor definition and simplify the code accordingly.

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#3 lore raw

[Bug 177171] Reduced frequency window for conservative governor

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=177171

Rafael J. Wysocki <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|NEW                         |NEEDINFO
                 CC|                            |[email protected],
                   |                            |[email protected]
         Regression|No                          |Yes

--- Comment #3 from Rafael J. Wysocki <[email protected]> --- Sorry for the breakage.

Do I understand correctly that the governor doesn't select frequencies below 2000000 now, although it did that before?

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#5 lore raw

[Bug 177171] Reduced frequency window for conservative governor

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=177171

--- Comment #5 from Rafael J. Wysocki <[email protected]> --- Created attachment 241561
--> https://bugzilla.kernel.org/attachment.cgi?id=241561&action=edit
cpufreq: conservative: Fix next frequency selection

Does this patch make any difference?

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#6 lore raw

[Bug 177171] Reduced frequency window for conservative governor

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=177171

Rafael J. Wysocki <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

 Attachment #241561|0                           |1

is obsolete| |

--- Comment #6 from Rafael J. Wysocki <[email protected]> --- Created attachment 241571
--> https://bugzilla.kernel.org/attachment.cgi?id=241571&action=edit
cpufreq: conservative: Fix next frequency selection

Sorry, one piece was missing in the previous patch.

Please test this one instead.

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#8 lore raw

[Bug 177171] Reduced frequency window for conservative governor

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=177171

Rafael J. Wysocki <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------
Status|NEEDINFO |ASSIGNED

--- Comment #8 from Rafael J. Wysocki <[email protected]> --- OK, thanks!

I'll submit it to the mailing lists, then.

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#9 lore raw

[Bug 177171] Reduced frequency window for conservative governor

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=177171

Rafael J. Wysocki <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |PATCH_ALREADY_AVAILABLE

--- Comment #9 from Rafael J. Wysocki <[email protected]> --- Patch submitted: https://patchwork.kernel.org/patch/9373743/

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.
#10 lore raw

[Bug 177171] Reduced frequency window for conservative governor

In reply to [email protected]

https://bugzilla.kernel.org/show_bug.cgi?id=177171

Rafael J. Wysocki <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

             Status|RESOLVED                    |CLOSED
         Resolution|PATCH_ALREADY_AVAILABLE     |CODE_FIX

--- Comment #10 from Rafael J. Wysocki <[email protected]> --- Merged as commit abb6627910a1e783c8e034b35b7c80e5e7f98f41:

http://git.kernel.org/cgit/linux/kernel/git/rafael/linux-pm.git/commit/?h=pm&id=abb6627910a1e783c8e034b35b7c80e5e7f98f41

Signature · 2 lines
You are receiving this mail because:
You are the assignee for the bug.