Skylake: intel_pstate: fix PCT_TO_HWP macro

Jason Gerard DeRose jason at system76.com
Wed Sep 23 18:51:40 UTC 2015


I think commit 74da56ce5c6715630aed3ccc0fcb86a9210c1a56 is very worthy 
of cherry-picking before the kernel freeze.

 From the bug I just filed:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1499040

The intel pstate driver is currently quite broken on on Skylake hardware.

The symptom is that the pstate driver can scale the frequency up, but 
wont then scale it back down. So as soon as you hit a decent amount of 
CPU load, you get stuck fluctuating in the turbo frequency ranges, never 
even dropping as low as the base clock frequency. Obviously this has 
very negative consequences for battery life.

Commit 74da56ce5c6715630aed3ccc0fcb86a9210c1a56 fixes this upstream, 
which is included in 4.3rc2:

https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/commit/?id=74da56ce5c6715630aed3ccc0fcb86a9210c1a56

I built a custom Ubuntu kernel with this commit and tested it on a 
laptop with a Skylake i7-6700 CPU. As measured by powerstat, this commit 
dropped the idle power consumption by 11 watts (from 34 to 23 watts, 
screen backlight was off during the test).

I also tested this custom kernel on Haswell and Ivy Bridge hardware to 
make sure it didn't introduce any behaviour changes in the pstate driver 
on older hardware. As far as I can tell, on this older hardware pstate 
is behaving exactly the same with and without this commit.

Thanks!




More information about the kernel-team mailing list