From: Quentin Perret <quentin.perret@arm.com> To: peterz@infradead.org, rjw@rjwysocki.net, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org Cc: gregkh@linuxfoundation.org, mingo@redhat.com, dietmar.eggemann@arm.com, morten.rasmussen@arm.com, chris.redpath@arm.com, patrick.bellasi@arm.com, valentin.schneider@arm.com, vincent.guittot@linaro.org, thara.gopinath@linaro.org, viresh.kumar@linaro.org, tkjos@google.com, joel@joelfernandes.org, smuckle@google.com, adharmap@quicinc.com, skannan@quicinc.com, pkondeti@codeaurora.org, juri.lelli@redhat.com, edubezval@gmail.com, srinivas.pandruvada@linux.intel.com, currojerez@riseup.net, javi.merino@kernel.org, quentin.perret@arm.com Subject: [PATCH v5 13/14] OPTIONAL: arch_topology: Start Energy Aware Scheduling Date: Tue, 24 Jul 2018 13:25:20 +0100 Message-ID: <20180724122521.22109-14-quentin.perret@arm.com> (raw) In-Reply-To: <20180724122521.22109-1-quentin.perret@arm.com> Energy Aware Scheduling (EAS) starts when the scheduling domains are built if the Energy Model (EM) is present. However, in the typical case of Arm/Arm64 systems, the EM is provided after the scheduling domains are first built at boot time, which results in EAS staying disabled. Fix this issue by re-building the scheduling domain from the arch topology driver, once CPUfreq is up and running and the asymmetry in CPU capacities has been detected. Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Quentin Perret <quentin.perret@arm.com> --- drivers/base/arch_topology.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c index e7cb0c6ade81..5b9f107f2e4a 100644 --- a/drivers/base/arch_topology.c +++ b/drivers/base/arch_topology.c @@ -10,6 +10,7 @@ #include <linux/arch_topology.h> #include <linux/cpu.h> #include <linux/cpufreq.h> +#include <linux/cpuset.h> #include <linux/device.h> #include <linux/of.h> #include <linux/slab.h> @@ -247,6 +248,7 @@ static void parsing_done_workfn(struct work_struct *work) cpufreq_unregister_notifier(&init_cpu_capacity_notifier, CPUFREQ_POLICY_NOTIFIER); free_cpumask_var(cpus_to_visit); + rebuild_sched_domains(); } #else -- 2.18.0
next prev parent reply index Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-07-24 12:25 [PATCH v5 00/14] " Quentin Perret 2018-07-24 12:25 ` [PATCH v5 01/14] sched: Relocate arch_scale_cpu_capacity Quentin Perret 2018-07-24 12:25 ` [PATCH v5 02/14] sched/cpufreq: Factor out utilization to frequency mapping Quentin Perret 2018-07-24 12:25 ` [PATCH v5 03/14] PM: Introduce an Energy Model management framework Quentin Perret 2018-08-09 21:52 ` Rafael J. Wysocki 2018-08-10 8:15 ` Quentin Perret 2018-08-10 8:41 ` Rafael J. Wysocki 2018-08-10 9:12 ` Quentin Perret 2018-08-10 11:13 ` Rafael J. Wysocki 2018-08-10 12:30 ` Quentin Perret 2018-08-12 9:49 ` Rafael J. Wysocki 2018-07-24 12:25 ` [PATCH v5 04/14] PM / EM: Expose the Energy Model in sysfs Quentin Perret 2018-07-24 12:25 ` [PATCH v5 05/14] sched/topology: Reference the Energy Model of CPUs when available Quentin Perret 2018-07-24 12:25 ` [PATCH v5 06/14] sched/topology: Lowest energy aware balancing sched_domain level pointer Quentin Perret 2018-07-26 16:00 ` Valentin Schneider 2018-07-26 17:01 ` Quentin Perret 2018-07-24 12:25 ` [PATCH v5 07/14] sched/topology: Introduce sched_energy_present static key Quentin Perret 2018-07-24 12:25 ` [PATCH v5 08/14] sched/fair: Clean-up update_sg_lb_stats parameters Quentin Perret 2018-07-24 12:25 ` [PATCH v5 09/14] sched: Add over-utilization/tipping point indicator Quentin Perret 2018-08-02 12:26 ` Peter Zijlstra 2018-08-02 13:03 ` Quentin Perret 2018-08-02 13:08 ` Peter Zijlstra 2018-08-02 13:18 ` Quentin Perret 2018-08-02 13:48 ` Vincent Guittot 2018-08-02 14:14 ` Quentin Perret 2018-08-02 15:14 ` Vincent Guittot 2018-08-02 15:30 ` Quentin Perret 2018-08-02 15:55 ` Vincent Guittot 2018-08-02 16:00 ` Quentin Perret 2018-08-02 16:07 ` Vincent Guittot 2018-08-02 16:10 ` Quentin Perret 2018-08-02 16:38 ` Vincent Guittot 2018-08-02 16:59 ` Quentin Perret 2018-08-03 7:48 ` Vincent Guittot 2018-08-03 8:18 ` Quentin Perret 2018-08-03 13:49 ` Vincent Guittot 2018-08-03 14:21 ` Vincent Guittot 2018-08-03 15:55 ` Quentin Perret 2018-08-06 8:40 ` Vincent Guittot 2018-08-06 9:43 ` Quentin Perret 2018-08-06 10:45 ` Vincent Guittot 2018-08-06 11:02 ` Quentin Perret 2018-08-06 10:08 ` Dietmar Eggemann 2018-08-06 10:33 ` Vincent Guittot 2018-08-06 12:29 ` Dietmar Eggemann 2018-08-06 12:37 ` Vincent Guittot 2018-08-06 13:20 ` Dietmar Eggemann 2018-08-09 9:30 ` Vincent Guittot 2018-08-09 9:38 ` Quentin Perret 2018-07-24 12:25 ` [PATCH v5 10/14] sched/cpufreq: Refactor the utilization aggregation method Quentin Perret 2018-07-30 19:35 ` skannan 2018-07-31 7:59 ` Quentin Perret 2018-07-31 19:31 ` skannan 2018-08-01 7:32 ` Rafael J. Wysocki 2018-08-01 8:23 ` Quentin Perret 2018-08-01 8:35 ` Rafael J. Wysocki 2018-08-01 9:23 ` Quentin Perret 2018-08-01 9:40 ` Rafael J. Wysocki 2018-08-02 13:04 ` Peter Zijlstra 2018-08-02 15:39 ` Quentin Perret 2018-08-03 13:04 ` Quentin Perret 2018-08-02 12:33 ` Peter Zijlstra 2018-08-02 12:45 ` Peter Zijlstra 2018-08-02 15:21 ` Quentin Perret 2018-08-02 17:36 ` Peter Zijlstra 2018-08-03 12:42 ` Quentin Perret 2018-07-24 12:25 ` [PATCH v5 11/14] sched/fair: Introduce an energy estimation helper function Quentin Perret 2018-07-24 12:25 ` [PATCH v5 12/14] sched/fair: Select an energy-efficient CPU on task wake-up Quentin Perret 2018-08-02 13:54 ` Peter Zijlstra 2018-08-02 16:21 ` Quentin Perret 2018-07-24 12:25 ` Quentin Perret [this message] 2018-07-24 12:25 ` [PATCH v5 14/14] OPTIONAL: cpufreq: dt: Register an Energy Model Quentin Perret
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=20180724122521.22109-14-quentin.perret@arm.com \ --to=quentin.perret@arm.com \ --cc=adharmap@quicinc.com \ --cc=chris.redpath@arm.com \ --cc=currojerez@riseup.net \ --cc=dietmar.eggemann@arm.com \ --cc=edubezval@gmail.com \ --cc=gregkh@linuxfoundation.org \ --cc=javi.merino@kernel.org \ --cc=joel@joelfernandes.org \ --cc=juri.lelli@redhat.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-pm@vger.kernel.org \ --cc=mingo@redhat.com \ --cc=morten.rasmussen@arm.com \ --cc=patrick.bellasi@arm.com \ --cc=peterz@infradead.org \ --cc=pkondeti@codeaurora.org \ --cc=rjw@rjwysocki.net \ --cc=skannan@quicinc.com \ --cc=smuckle@google.com \ --cc=srinivas.pandruvada@linux.intel.com \ --cc=thara.gopinath@linaro.org \ --cc=tkjos@google.com \ --cc=valentin.schneider@arm.com \ --cc=vincent.guittot@linaro.org \ --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
LKML Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/lkml/0 lkml/git/0.git git clone --mirror https://lore.kernel.org/lkml/1 lkml/git/1.git git clone --mirror https://lore.kernel.org/lkml/2 lkml/git/2.git git clone --mirror https://lore.kernel.org/lkml/3 lkml/git/3.git git clone --mirror https://lore.kernel.org/lkml/4 lkml/git/4.git git clone --mirror https://lore.kernel.org/lkml/5 lkml/git/5.git git clone --mirror https://lore.kernel.org/lkml/6 lkml/git/6.git git clone --mirror https://lore.kernel.org/lkml/7 lkml/git/7.git git clone --mirror https://lore.kernel.org/lkml/8 lkml/git/8.git git clone --mirror https://lore.kernel.org/lkml/9 lkml/git/9.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 lkml lkml/ https://lore.kernel.org/lkml \ linux-kernel@vger.kernel.org public-inbox-index lkml Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.linux-kernel AGPL code for this site: git clone https://public-inbox.org/public-inbox.git