Messages in this thread | | | Subject | Re: [PATCH 01/11] sched, cpuset: Add regenerate_sched_domains function to rebuild all sched domains | From | Tim Chen <> | Date | Mon, 22 Aug 2016 12:51:59 -0700 |
| |
On Mon, 2016-08-22 at 14:52 +0100, Morten Rasmussen wrote: > On Thu, Aug 18, 2016 at 03:36:42PM -0700, Srinivas Pandruvada wrote: > > > > From: Tim Chen <tim.c.chen@linux.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?
Sure, I'll take a look at using arch_update_cpu_topology.
Thanks.
Tim
| |