Re: [RFC V2 1/6] cpufreq: Replace "max_transition_latency" with "dynamic_switching"

From: Rafael J. Wysocki
Date: Fri Jul 14 2017 - 07:12:10 EST


On Fri, Jul 14, 2017 at 9:01 AM, Dominik Brodowski
<linux@xxxxxxxxxxxxxxxxxxxx> wrote:
> On Thu, Jul 13, 2017 at 06:19:53PM +0200, Rafael J. Wysocki wrote:
>> On Thu, Jul 13, 2017 at 7:40 AM, Viresh Kumar <viresh.kumar@xxxxxxxxxx> wrote:
>> > There is no limitation in the ondemand or conservative governors which
>> > disallow the transition_latency to be greater than 10 ms.
>> >
>> > The max_transition_latency field is rather used to disallow automatic
>> > dynamic frequency switching for platforms which didn't wanted these
>> > governors to run.
>> >
>> > Replace max_transition_latency with a boolean (dynamic_switching) and
>> > check for transition_latency == CPUFREQ_ETERNAL along with that. This
>> > makes it pretty straight forward to read/understand now.
>>
>> Well, using CPUFREQ_ETERNAL for that on the driver side is still not
>> particularly straightforward IMO, so maybe add a
>> "no_dynamic_switching" to the driver structure and set it to "true"
>> for the one driver in question?
>
> IIRC it's not just one driver which sets the latency to CPUFREQ_ETERNAL, and
> where dynamic switching might be harmful or at least lead to undefined
> behavior.

OK

Still, though, using CPUFREQ_ETERNAL to indicate the "no dynamic
switching" condition is somewhat convoluted, so why don't we have a
flag to *explicitly* say that instead?

Do you know which drivers they are or is it just all drivers that use
CPUFREQ_ETERNAL?

Thanks,
Rafael