Re: [PATCH] cpufreq: intel_pstate: Fix unchecked MSR 0x773 access
From: Srinivas Pandruvada
Date: Thu Nov 04 2021 - 10:19:27 EST
On Thu, 2021-11-04 at 09:30 -0400, Steven Rostedt wrote:
> On Wed, 3 Nov 2021 22:19:25 -0700
> Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx> wrote:
>
> > It is possible that on some platforms HWP interrupts are disabled.
> > In
> > that case accessing MSR 0x773 will result in warning.
> >
> > So check X86_FEATURE_HWP_NOTIFY feature to access MSR 0x773. The
> > other
> > places in code where this MSR is accessed, already checks this
> > feature
> > except during disable path called during cpufreq offline and
> > suspend
> > callbacks.
> >
> > Fixes: 57577c996d73 ("cpufreq: intel_pstate: Process HWP Guaranteed
> > change notification")
> > Reported-by: Steven Rostedt <rostedt@xxxxxxxxxxx>
>
> I added this patch on top of the above commit and I verified that the
> issue
> goes away. And just to confirm, I removed the patch, and the issue
> reappeared.
>
> Tested-by: Steven Rostedt (VMware) <rostedt@xxxxxxxxxxx>
>
Thanks for the test.
Sorry again for the mess up.
-Srinivas
> -- Steve
>
>
> > Signed-off-by: Srinivas Pandruvada <
> > srinivas.pandruvada@xxxxxxxxxxxxxxx>
> > ---
> > drivers/cpufreq/intel_pstate.c | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/drivers/cpufreq/intel_pstate.c
> > b/drivers/cpufreq/intel_pstate.c
> > index 349ddbaef796..1e6898dc76b6 100644
> > --- a/drivers/cpufreq/intel_pstate.c
> > +++ b/drivers/cpufreq/intel_pstate.c
> > @@ -1620,6 +1620,9 @@ static void
> > intel_pstate_disable_hwp_interrupt(struct cpudata *cpudata)
> > {
> > unsigned long flags;
> >
> > + if (!boot_cpu_has(X86_FEATURE_HWP_NOTIFY))
> > + return;
> > +
> > /* wrmsrl_on_cpu has to be outside spinlock as this can
> > result in IPC */
> > wrmsrl_on_cpu(cpudata->cpu, MSR_HWP_INTERRUPT, 0x00);
> >
>