[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20180607154051.GA19168@sandybridge-desktop>
Date: Thu, 7 Jun 2018 23:40:52 +0800
From: Yu Chen <yu.c.chen@...el.com>
To: Viresh Kumar <viresh.kumar@...aro.org>
Cc: "Rafael J. Wysocki" <rjw@...ysocki.net>,
linux-kernel@...r.kernel.org,
Artem S Tashkinov <t.artem@...lcity.com>,
linux-pm@...r.kernel.org
Subject: Re: [PATCH][RFC] sched: cpufreq: Fix long idle judgement logic in
load calculation
Hi Viresh,
thanks for the comment,
On Thu, Jun 07, 2018 at 10:15:43AM +0530, Viresh Kumar wrote:
> On 07-06-18, 11:17, Chen Yu wrote:
> > diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c
> > index 871bf9c..9792c80 100644
> > --- a/drivers/cpufreq/cpufreq_governor.c
> > +++ b/drivers/cpufreq/cpufreq_governor.c
> > @@ -165,7 +165,7 @@ unsigned int dbs_update(struct cpufreq_policy *policy)
> > * calls, so the previous load value can be used then.
> > */
> > load = j_cdbs->prev_load;
> > - } else if (unlikely(time_elapsed > 2 * sampling_rate &&
> > + } else if (((int)idle_time > 0) && unlikely(idle_time > 2 * sampling_rate &&
>
> Yes the figures are insane, but if the idle time is around 36 minutes, the
> conversion to int will make a positive value look negative and we will exit the
> conditional block. And if we don't think that we will ever get such insane idle
> times or we don't want to care about them, then what about doing this instead:
>
> } else if ((unlikely((int)idle_time > 2 * sampling_rate &&
>
> same below.
>
Yes, this would be more straightforward.
Best,
Yu
> --
> viresh
Powered by blists - more mailing lists