[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160822135247.GD25262@e105550-lin.cambridge.arm.com>
Date: Mon, 22 Aug 2016 14:52:48 +0100
From: Morten Rasmussen <morten.rasmussen@....com>
To: Srinivas Pandruvada <srinivas.pandruvada@...ux.intel.com>
Cc: mingo@...hat.com, tglx@...utronix.de, hpa@...or.com,
rjw@...ysocki.net, peterz@...radead.org, x86@...nel.org,
bp@...e.de, sudeep.holla@....com, ak@...ux.intel.com,
linux-acpi@...r.kernel.org, linux-pm@...r.kernel.org,
alexey.klimov@....com, viresh.kumar@...aro.org,
akpm@...ux-foundation.org, linux-kernel@...r.kernel.org,
lenb@...nel.org, tim.c.chen@...ux.intel.com,
paul.gortmaker@...driver.com, jpoimboe@...hat.com,
mcgrof@...nel.org, jgross@...e.com, robert.moore@...el.com,
dvyukov@...gle.com, jeyu@...hat.com
Subject: Re: [PATCH 01/11] sched, cpuset: Add regenerate_sched_domains
function to rebuild all sched domains
On Thu, Aug 18, 2016 at 03:36:42PM -0700, Srinivas Pandruvada wrote:
> From: Tim Chen <tim.c.chen@...ux.intel.com>
>
> The current rebuild_sched_domains will only rebuild the sched domains
> unless the cpumask changes. However, in some scenarios when the
> topology flag value changes, it will not rebuild the sched domain.
>
> We create a regenerate_sched_domains function that will always
> rebuild all the sched domains to take care of this scenario.
[...]
> --- a/kernel/sched/core.c
> +++ b/kernel/sched/core.c
> @@ -7081,7 +7082,7 @@ void partition_sched_domains(int ndoms_new, cpumask_var_t doms_new[],
> unregister_sched_domain_sysctl();
>
> /* Let architecture update cpu core mappings. */
> - new_topology = arch_update_cpu_topology();
> + new_topology = arch_update_cpu_topology() | need_domain_rebuild;
You can force rebuild_sched_domains() to rebuild the sched_domain
hierarchy by just implementing arch_update_cpu_topology(). Make it
return 1 when you want the hierarchy to be updated.
Implementing another forcing mechanism seems redundant. I must be
missing something?
I just did exactly that to set the SD_ASYM_CPUCAPACITY flag for
big.LITTLE platforms on arm/arm64 as we don't know if the flag should be
set until cpufreq has initialized.
Morten
Powered by blists - more mailing lists