Re: [PATCH V4 1/2] cpufreq: Mark x86 drivers with CPUFREQ_SKIP_INITIAL_FREQ_CHECKflag

From: Viresh Kumar
Date: Tue Dec 03 2013 - 00:48:10 EST


On 3 December 2013 04:03, Rafael J. Wysocki <rjw@xxxxxxxxxxxxx> wrote:
> On Monday, December 02, 2013 07:23:01 AM Dirk Brandewie wrote:
>> Sorry for late response to these threads. Holiday weekend in the US.

No issues.

>> NAK for intel_pstate. The code that will use this flag also uses has_target()
>> which is false for intel_pstate.
>
> Is your point that intel_pstate doesn't need to have this flag set?

Probably yes as intel_pstate would never share freq-table. Will fix this.

>> I still believe that this bug should be dealt with in platform specific code
>> since this is working around a bootloader bug. Are there platforms in the wild
>> that even need this code or is this to support early platform bringup?
>
> All it takes to introduce it is to use a buggy bootloader, so I guess
> there's a number of potentially affected platforms out there.

Yeah. This was first reported for OMAP SoC's though.

> This really isn't about which individual platforms have the problem, but about
> which platforms have the property that the clock *can* be set to a wrong
> frequency initially. These are the ones we need to worry about regardless,
> because we can't control boot loaders and duplicating the same code in
> a number of drivers doesn't sound like a good approach.
>
> So the only reasonable way forward I can see is to flag either the platforms
> that we need to worry about, or the platforms that we don't need to worry
> about and use that to decide whether or not to do the check.

To be honest Rafael suggested exactly this initially, i.e. set flag for all the
drivers which want this to be done and I thought the number of drivers that
don't want it would be lesser and so it would be easier to set this flag there.

But looking at the logic Dirk gave, it makes sense to do this for drivers which
want this feature to be enabled. Moreover we really can't say for how long
these drivers will continue keeping this flag as I don't really think its a bug.
Kernel can't expect bootloaders to set core to a frequency which should be
exactly same as what cpufreq table has. And so this flag may stay until
cpufreq is around :)

I will send updated patches soon..

--
viresh
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/