All of lore.kernel.org
 help / color / mirror / Atom feed
From: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
To: "Rafael J. Wysocki" <rafael@kernel.org>
Cc: Len Brown <lenb@kernel.org>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	Peter Zijlstra <peterz@infradead.org>,
	Mel Gorman <mgorman@techsingularity.net>,
	Linux PM <linux-pm@vger.kernel.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Juri Lelli <juri.lelli@redhat.com>,
	Viresh Kumar <viresh.kumar@linaro.org>
Subject: Re: [RFC/RFT] [PATCH v2 3/6] cpufreq: intel_pstate: Add update_util_hook for HWP
Date: Tue, 29 May 2018 15:17:54 -0700	[thread overview]
Message-ID: <1527632274.2951.41.camel@linux.intel.com> (raw)
In-Reply-To: <CAJZ5v0hHD-qH45bnw91w+ky=rnrTW4yTYMdizU47S8Y8Avqc_g@mail.gmail.com>

On Tue, 2018-05-29 at 09:37 +0200, Rafael J. Wysocki wrote:
> On Thu, May 24, 2018 at 3:47 AM, Srinivas Pandruvada
> <srinivas.pandruvada@linux.intel.com> wrote:
> > When HWP dynamic boost is active then set the HWP specific update
> > util
> > hook.
> > 
> > Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel
> > .com>
> 
> Splitting this patch out of the next one is sort of artificial.
I will merge to the patch where the hwp_boost is getting used.

Thanks,
Srinivas

> 
> > ---
> >  drivers/cpufreq/intel_pstate.c | 21 +++++++++++++++++----
> >  1 file changed, 17 insertions(+), 4 deletions(-)
> > 
> > diff --git a/drivers/cpufreq/intel_pstate.c
> > b/drivers/cpufreq/intel_pstate.c
> > index 6ad46e07cad6..382160570b5f 100644
> > --- a/drivers/cpufreq/intel_pstate.c
> > +++ b/drivers/cpufreq/intel_pstate.c
> > @@ -291,6 +291,7 @@ static struct pstate_funcs pstate_funcs
> > __read_mostly;
> > 
> >  static int hwp_active __read_mostly;
> >  static bool per_cpu_limits __read_mostly;
> > +static bool hwp_boost __read_mostly;
> 
> Because of this, among other things.
> 
> > 
> >  static struct cpufreq_driver *intel_pstate_driver __read_mostly;
> > 
> > @@ -1461,6 +1462,11 @@ static inline bool
> > intel_pstate_hwp_boost_down(struct cpudata *cpu)
> >         return false;
> >  }
> > 
> > +static inline void intel_pstate_update_util_hwp(struct
> > update_util_data *data,
> > +                                               u64 time, unsigned
> > int flags)
> > +{
> > +}
> > +
> >  static inline void intel_pstate_calc_avg_perf(struct cpudata *cpu)
> >  {
> >         struct sample *sample = &cpu->sample;
> > @@ -1764,7 +1770,7 @@ static void
> > intel_pstate_set_update_util_hook(unsigned int cpu_num)
> >  {
> >         struct cpudata *cpu = all_cpu_data[cpu_num];
> > 
> > -       if (hwp_active)
> > +       if (hwp_active && !hwp_boost)
> >                 return;
> > 
> >         if (cpu->update_util_set)
> > @@ -1772,8 +1778,12 @@ static void
> > intel_pstate_set_update_util_hook(unsigned int cpu_num)
> > 
> >         /* Prevent intel_pstate_update_util() from using stale
> > data. */
> >         cpu->sample.time = 0;
> > -       cpufreq_add_update_util_hook(cpu_num, &cpu->update_util,
> > -                                    intel_pstate_update_util);
> > +       if (hwp_active)
> > +               cpufreq_add_update_util_hook(cpu_num, &cpu-
> > >update_util,
> > +                                            intel_pstate_update_ut
> > il_hwp);
> > +       else
> > +               cpufreq_add_update_util_hook(cpu_num, &cpu-
> > >update_util,
> > +                                            intel_pstate_update_ut
> > il);
> >         cpu->update_util_set = true;
> >  }
> > 
> > @@ -1885,8 +1895,11 @@ static int intel_pstate_set_policy(struct
> > cpufreq_policy *policy)
> >                 intel_pstate_set_update_util_hook(policy->cpu);
> >         }
> > 
> > -       if (hwp_active)
> > +       if (hwp_active) {
> > +               if (!hwp_boost)
> > +                       intel_pstate_clear_update_util_hook(policy-
> > >cpu);
> >                 intel_pstate_hwp_set(policy->cpu);
> > +       }
> > 
> >         mutex_unlock(&intel_pstate_limits_lock);
> > 
> > --
> > 2.13.6
> > 

  reply	other threads:[~2018-05-29 22:20 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-24  1:47 [RFC/RFT] [PATCH v2 0/6] Intel_pstate: HWP Dynamic performance boost Srinivas Pandruvada
2018-05-24  1:47 ` [RFC/RFT] [PATCH v2 1/6] cpufreq: intel_pstate: Cache last HWP capability/request value Srinivas Pandruvada
2018-05-24  1:47 ` [RFC/RFT] [PATCH v2 2/6] cpufreq: intel_pstate: Add HWP boost utility functions Srinivas Pandruvada
2018-05-29  7:47   ` Rafael J. Wysocki
2018-05-24  1:47 ` [RFC/RFT] [PATCH v2 3/6] cpufreq: intel_pstate: Add update_util_hook for HWP Srinivas Pandruvada
2018-05-29  7:37   ` Rafael J. Wysocki
2018-05-29 22:17     ` Srinivas Pandruvada [this message]
2018-05-24  1:47 ` [RFC/RFT] [PATCH v2 4/6] cpufreq: intel_pstate: HWP boost performance on IO wakeup Srinivas Pandruvada
2018-05-29  7:44   ` Rafael J. Wysocki
2018-05-29 22:24     ` Pandruvada, Srinivas
2018-05-24  1:47 ` [RFC/RFT] [PATCH v2 5/6] cpufreq: intel_pstate: New sysfs entry to control HWP boost Srinivas Pandruvada
2018-05-24  1:47 ` [RFC/RFT] [PATCH v2 6/6] cpufreq: intel_pstate: enable boost for SKX Srinivas Pandruvada

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1527632274.2951.41.camel@linux.intel.com \
    --to=srinivas.pandruvada@linux.intel.com \
    --cc=juri.lelli@redhat.com \
    --cc=lenb@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=mgorman@techsingularity.net \
    --cc=peterz@infradead.org \
    --cc=rafael@kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=viresh.kumar@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.