From: Daniel Lezcano <daniel.lezcano@linaro.org>
To: "Rafael J. Wysocki" <rjw@rjwysocki.net>
Cc: nicolas.pitre@linaro.org, linux-pm@vger.kernel.org,
linux-kernel@vger.kernel.org, peterz@infradead.org,
linaro-kernel@lists.linaro.org, patches@linaro.org,
Preeti U Murthy <preeti@linux.vnet.ibm.com>
Subject: Re: [PATCH V2 1/5] sched: idle: cpuidle: Check the latency req before idle
Date: Wed, 05 Nov 2014 22:41:00 +0100 [thread overview]
Message-ID: <545A996C.6030606@linaro.org> (raw)
In-Reply-To: <1637800.Fp0noCplzq@vostro.rjw.lan>
On 11/05/2014 10:57 PM, Rafael J. Wysocki wrote:
> On Thursday, October 23, 2014 11:01:17 AM Daniel Lezcano wrote:
>> When the pmqos latency requirement is set to zero that means "poll in all the
>> cases".
>>
>> That is correctly implemented on x86 but not on the other archs.
>>
>> As how is written the code, if the latency request is zero, the governor will
>> return zero, so corresponding, for x86, to the poll function, but for the
>> others arch the default idle function. For example, on ARM this is wait-for-
>> interrupt with a latency of '1', so violating the constraint.
>>
>> In order to fix that, do the latency requirement check *before* calling the
>> cpuidle framework in order to jump to the poll function without entering
>> cpuidle. That has several benefits:
>>
>> 1. It clarifies and unifies the code
>> 2. It fixes x86 vs other archs behavior
>> 3. Factors out the call to the same function
>> 4. Prevent to enter the cpuidle framework with its expensive cost in
>> calculation
>>
>> As the latency_req is needed in all the cases, change the select API to take
>> the latency_req as parameter in case it is not equal to zero.
>>
>> As a positive side effect, it introduces the latency constraint specified
>> externally, so one more step to the cpuidle/scheduler integration.
>
> I'm expecting to see a new version of this patchset relatively soon.
>
> Are you planning to send one?
I would like to find an agreement with Preeti. But, yes, I am on it.
-- Daniel
--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs
Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog
prev parent reply other threads:[~2014-11-05 21:41 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-23 9:01 [PATCH V2 1/5] sched: idle: cpuidle: Check the latency req before idle Daniel Lezcano
2014-10-23 9:01 ` [PATCH V2 2/5] sched: idle: Get the next timer event and pass it the cpuidle framework Daniel Lezcano
2014-10-23 9:01 ` [PATCH V2 3/5] cpuidle: idle: menu: Don't reflect when a state selection failed Daniel Lezcano
2014-10-28 2:01 ` Len Brown
2014-10-28 19:15 ` Daniel Lezcano
2014-10-28 7:01 ` Preeti Murthy
2014-10-28 18:28 ` Daniel Lezcano
2014-10-29 1:44 ` Preeti U Murthy
2014-10-29 16:54 ` Kevin Hilman
2014-10-29 16:54 ` Kevin Hilman
2014-10-29 21:11 ` Rafael J. Wysocki
2014-10-23 9:01 ` [PATCH V2 4/5] cpuidle: menu: Fix the get_typical_interval Daniel Lezcano
2014-10-23 16:43 ` Nicolas Pitre
2014-10-28 2:48 ` Len Brown
2014-10-29 18:15 ` Daniel Lezcano
2014-10-23 9:01 ` [PATCH V2 5/5] cpuidle: menu: Move the update function before its declaration Daniel Lezcano
2014-10-23 16:47 ` Nicolas Pitre
2014-10-28 2:53 ` Len Brown
2014-10-28 3:51 ` [PATCH V2 1/5] sched: idle: cpuidle: Check the latency req before idle Preeti Murthy
2014-10-28 18:59 ` Daniel Lezcano
2014-10-29 2:01 ` Preeti U Murthy
2014-11-05 14:28 ` Daniel Lezcano
2014-11-06 4:08 ` Preeti U Murthy
2014-11-06 12:27 ` Daniel Lezcano
2014-11-07 4:23 ` Preeti U Murthy
2014-11-06 13:42 ` Daniel Lezcano
2014-11-07 4:29 ` Preeti U Murthy
2014-11-07 9:35 ` Daniel Lezcano
2014-11-05 21:57 ` Rafael J. Wysocki
2014-11-05 21:41 ` Daniel Lezcano [this message]
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=545A996C.6030606@linaro.org \
--to=daniel.lezcano@linaro.org \
--cc=linaro-kernel@lists.linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=nicolas.pitre@linaro.org \
--cc=patches@linaro.org \
--cc=peterz@infradead.org \
--cc=preeti@linux.vnet.ibm.com \
--cc=rjw@rjwysocki.net \
/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.