From: Arto Jantunen <viiru@iki.fi>
To: Viresh Kumar <viresh.kumar@linaro.org>
Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>,
"Chen, Yu C" <yu.c.chen@intel.com>,
Doug Smythies <dsmythies@telus.net>,
"'Rafael J. Wysocki'" <rjw@rjwysocki.net>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
Rik van Riel <riel@redhat.com>
Subject: Re: PROBLEM: Cpufreq constantly keeps frequency at maximum on 4.5-rc4
Date: Sun, 28 Feb 2016 17:43:46 +0200 [thread overview]
Message-ID: <87egbwn8lp.fsf@iki.fi> (raw)
In-Reply-To: <20160222164114.GU28226@vireshk-i7> (Viresh Kumar's message of "Mon, 22 Feb 2016 22:11:14 +0530")
Viresh Kumar <viresh.kumar@linaro.org> writes:
> On 22-02-16, 18:39, Arto Jantunen wrote:
>> Viresh Kumar <viresh.kumar@linaro.org> writes:
>>
>> > On 21-02-16, 22:33, Arto Jantunen wrote:
>> >> I have tested both available governors, and see the same behavior either
>> >> way. The kernel I have defaults to performance, I think I'll try
>> >> building another one which defaults to powersave to see if that changes
>> >> anything (perhaps both governors actually work but it isn't possible to
>> >> switch between them at runtime?). The Debian userspace defaults to
>> >> ondemand, which doesn't exist for intel_pstate.
>> >
>> > I took a close look at git log between 4.4 and 4.5-rc1 for intel-pstate and it
>> > had only three patches:
>> >
>> > 157386b6fc14 cpufreq: intel_pstate: Configurable algorithm to get target pstate
>> > e70eed2b6454 cpufreq: intel_pstate: Account for non C0 time
>> > 63d1d656a523 cpufreq: intel_pstate: Account for IO wait time
>> >
>> > The first one creates special routines based on the CPU model you have, yours is
>> > 94, i.e. 5e, which means we are going to use: core_params in your case. And so
>> > you will be using get_target_pstate_use_performance() for .get_target_pstate().
>> >
>> > The two later patches doesn't make any changes to the working of core_params()
>> > and so shouldn't have changed anything for skylake.
>> >
>> > Anyway, Please trying reverting the above three patches to see if there is a bug
>> > somewhere there. So you need to do:
>> >
>> > git revert 63d1d656a523
>> > git revert e70eed2b6454
>> > git revert 157386b6fc14
>>
>> Thanks. I tried this, and somewhat surprisingly it doesn't change the
>> result. I guess we are back to doing a full bisect?
>
> Good. That was kind of what I expected, so no surprise :)
>
> I think bisect wouldn't be that difficult, please try :)
Bisect comes up with this commit:
commit a9ceb78bc75ca47972096372ff3d48648b16317a
Author: Rik van Riel <riel@redhat.com>
Date: Tue Nov 3 17:34:18 2015 -0500
cpuidle,menu: use interactivity_req to disable polling
The menu governor carefully figures out how much time we typically
sleep for an estimated sleep interval, or whether there is a repeating
pattern going on, and corrects that estimate for the CPU load.
Then it proceeds to ignore that information when determining whether
or not to consider polling. This is not a big deal on most x86 CPUs,
which have very low C1 latencies, and the patch should not have any
effect on those CPUs.
However, certain CPUs (eg. Atom) have much higher C1 latencies, and
it would be good to not waste performance and power on those CPUs if
we are expecting a very low wakeup latency.
Disable polling based on the estimated interactivity requirement, not
on the time to the next timer interrupt.
Signed-off-by: Rik van Riel <riel@redhat.com>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
I verified the result by reverting
9c4b2867ed7c8c8784dd417ffd16e705e81eb145 and
a9ceb78bc75ca47972096372ff3d48648b16317a from 4.5-rc5, the resulting
kernel does not have the bug.
Since this is about cpuidle, I'll also mention that this hardware
requires idle=nomwait on the command line, otherwise the kernel will not
boot.
--
Arto Jantunen
next prev parent reply other threads:[~2016-02-28 15:43 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-20 8:49 PROBLEM: Cpufreq constantly keeps frequency at maximum on 4.5-rc4 Arto Jantunen
2016-02-20 16:31 ` Doug Smythies
2016-02-20 17:10 ` Arto Jantunen
2016-02-20 18:03 ` Chen, Yu C
2016-02-21 8:45 ` Arto Jantunen
2016-02-21 8:52 ` Chen, Yu C
2016-02-21 20:02 ` Srinivas Pandruvada
2016-02-21 20:33 ` Arto Jantunen
2016-02-22 6:16 ` Viresh Kumar
2016-02-22 16:39 ` Arto Jantunen
2016-02-22 16:41 ` Viresh Kumar
2016-02-22 16:48 ` Viresh Kumar
2016-02-22 19:25 ` Srinivas Pandruvada
2016-02-28 15:43 ` Arto Jantunen [this message]
2016-02-29 6:22 ` Doug Smythies
2016-03-01 19:28 ` Doug Smythies
2016-02-29 16:49 ` Srinivas Pandruvada
2016-03-01 0:37 ` Rafael J. Wysocki
[not found] ` <20160229201946.0bdcc48e@annuminas.surriel.com>
2016-03-01 7:06 ` Arto Jantunen
2016-03-01 16:59 ` Arto Jantunen
2016-03-01 19:22 ` Rik van Riel
2016-03-01 19:47 ` Arto Jantunen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87egbwn8lp.fsf@iki.fi \
--to=viiru@iki.fi \
--cc=dsmythies@telus.net \
--cc=linux-pm@vger.kernel.org \
--cc=riel@redhat.com \
--cc=rjw@rjwysocki.net \
--cc=srinivas.pandruvada@linux.intel.com \
--cc=viresh.kumar@linaro.org \
--cc=yu.c.chen@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.