svn commit: r260602 - stable/8/sys/x86/cpufreq
Alexander Motin
mav at FreeBSD.org
Mon Jan 13 19:14:30 UTC 2014
Author: mav
Date: Mon Jan 13 19:14:29 2014
New Revision: 260602
URL: http://svnweb.freebsd.org/changeset/base/260602
Log:
MFC r259197:
Do not DELAY() for P-state transition unless we want to see the result.
Intel manual says: "If a transition is already in progress, transition to
a new value will subsequently take effect. Reads of IA32_PERF_CTL determine
the last targeted operating point." So seems it should be fine to just
trigger wanted transition and go. Linux does the same.
Modified:
stable/8/sys/x86/cpufreq/est.c
Directory Properties:
stable/8/ (props changed)
stable/8/sys/ (props changed)
stable/8/sys/x86/ (props changed)
Modified: stable/8/sys/x86/cpufreq/est.c
==============================================================================
--- stable/8/sys/x86/cpufreq/est.c Mon Jan 13 19:08:25 2014 (r260601)
+++ stable/8/sys/x86/cpufreq/est.c Mon Jan 13 19:14:29 2014 (r260602)
@@ -1288,10 +1288,9 @@ est_set_id16(device_t dev, uint16_t id16
msr = (msr & ~0xffff) | id16;
wrmsr(MSR_PERF_CTL, msr);
- /* Wait a short while for the new setting. XXX Is this necessary? */
- DELAY(EST_TRANS_LAT);
-
if (need_check) {
+ /* Wait a short while and read the new status. */
+ DELAY(EST_TRANS_LAT);
est_get_id16(&new_id16);
if (new_id16 != id16) {
if (bootverbose)
More information about the svn-src-all
mailing list