lkml.org 
[lkml]   [2019]   [Mar]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH V3] cpufreq: Call transition notifier only once for each policy
On 21-03-19, 16:49, Thomas Gleixner wrote:
> On Wed, 20 Mar 2019, Viresh Kumar wrote:
> >
> > diff --git a/arch/x86/kernel/tsc.c b/arch/x86/kernel/tsc.c
> > index 3fae23834069..b2fe665878f7 100644
> > --- a/arch/x86/kernel/tsc.c
> > +++ b/arch/x86/kernel/tsc.c
> > @@ -958,10 +958,15 @@ static int time_cpufreq_notifier(struct notifier_block *nb, unsigned long val,
> > struct cpufreq_freqs *freq = data;
> > unsigned long *lpj;
> >
> > + if (WARN_ON_ONCE(cpumask_weight(freq->policy->related_cpus) != 1)) {
> > + mark_tsc_unstable("cpufreq changes: related CPUs affected");
> > + return 0;
> > + }
>
> You might add a check which ensures that policy->cpu == smp_processor_id()
> because if this is not the case ....

How about something like this ?

if (WARN_ON_ONCE(cpumask_weight(freq->policy->related_cpus) != 1 ||
freq->policy->cpu != smp_processor_id())) {
mark_tsc_unstable("cpufreq changes: related CPUs affected");
return 0;
}


Thanks for your feedback.

--
viresh

\
 
 \ /
  Last update: 2019-03-22 07:28    [W:0.253 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site