[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0jCmcHS-J7L182+Xfv_FJiAzfWL4MNpvAHq7siuW1Bp=g@mail.gmail.com>
Date: Tue, 10 May 2016 21:07:24 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: "Chen, Yu C" <yu.c.chen@...el.com>
Cc: "linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
Srinivas Pandruvada <srinivas.pandruvada@...ux.intel.com>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Len Brown <lenb@...nel.org>,
Viresh Kumar <viresh.kumar@...aro.org>,
Zhang Rui <rui.zhang@...el.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH][RFC] cpufreq: intel_pstate: Avoid time-costly
synchronization if schedutil is not enabled
On Tue, May 10, 2016 at 11:24 AM, <yu.c.chen@...el.com> wrote:
> From: Chen Yu <yu.c.chen@...el.com>
First, the subject. It doesn't have anything to do with schedutil, so
I'd just use something like "Avoid unnecessary synchronize_sched()
during initialization".
> Commit bb6ab52f2bef ("intel_pstate: Do not set utilization update
> hook too early") moved the assignment of utilization update hook
> from intel_pstate_init_cpu to intel_pstate_set_policy(), however
> after moving, we need to leverage synchronize_sched() to deal
> with synchronization, which is time-costly because it needs to
> wait for all the CPUs to go through a grace period.
>
> Actuall we don't need to synchronize_sched if schedutil has
> not been enabled, which also can address the problem in our case,
> thus bypass the synchronize_sched during bootup.
"Actually, the synchronize_sched() is not necessary if the utilization
update hook has not been set for the given CPU yet, so make the driver
check if that's the case and avoid the synchronize_sched() call in
that case."
> Fixes: bb6ab52f2bef "intel_pstate: Do not set utilization update hook too early"
I'm not sure I'd call it a fix, unless there is a significant
difference in the system boot time or similar. If that's not the
case, this simply is an optimization on top of the above commit.
Powered by blists - more mailing lists