Subject: Re: [PATCH v2] ppc: cpufreq: disable preemption while checking CPU throttling state

From: Gautham R Shenoy <[email-masked]>
Date: Tue, 8 Nov 2016 08:47:20 +0530

Hi Michael,

On Tue, Nov 08, 2016 at 11:21:23AM +1100, Michael Ellerman wrote:
> Denis Kirjanov <[email-masked]> writes:
> > On 11/7/16, Michael Ellerman <[email-masked]> wrote:
> >> Denis Kirjanov <[email-masked]> writes:
> >>>     [   67.700897] BUG: using smp_processor_id() in preemptible [00000000] code: cat/7343
> >>>     [   67.700988] caller is .powernv_cpufreq_throttle_check+0x2c/0x710
> >>
> >> When did this break?
> >
> > I think that problem exists since commit
> > 09a972d1620934142d30cfda455ffe429af751c4 ("cpufreq: powernv: Report
> > cpu frequency throttling") but I can be wrong
> 
> Yep that looks right to me, thanks.
> 
> Gautham, how bad is the bug here, do we want to send this to stable?

Not so bad that it needs to be sent to stable immediately.

On CONFIG_PREEMPT enabled systems, if task executing
powernv_cpufreq_throttle_check can be switched to a CPU on a different
chip, then we will end up incorrectly attributing the throttle
statistics of the new chip to the chip where it previously ran. These
throttle statistics aren't used inside the kernel for any computation,
but are reported to the user via /sysfs for them to account for any
variance during a benchmark run.

It would be good to include this in the 4.9 fixes though. 

> cheers