lkml.org 
[lkml]   [2014]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [tip:sched/core] sched: Rework sched_domain topology definition
From
Hi Vincent,

On 8 May 2014 11:43, tip-bot for Vincent Guittot <tipbot@zytor.com> wrote:
> Commit-ID: 143e1e28cb40bed836b0a06567208bd7347c9672
> Gitweb: http://git.kernel.org/tip/143e1e28cb40bed836b0a06567208bd7347c9672
> Author: Vincent Guittot <vincent.guittot@linaro.org>
> AuthorDate: Fri, 11 Apr 2014 11:44:37 +0200
> Committer: Ingo Molnar <mingo@kernel.org>
> CommitDate: Wed, 7 May 2014 13:33:49 +0200
>
> sched: Rework sched_domain topology definition
>
> We replace the old way to configure the scheduler topology with a new method
> which enables a platform to declare additionnal level (if needed).
>
> We still have a default topology table definition that can be used by platform
> that don't want more level than the SMT, MC, CPU and NUMA ones. This table can
> be overwritten by an arch which either wants to add new level where a load
> balance make sense like BOOK or powergating level or wants to change the flags
> configuration of some levels.
>
> For each level, we need a function pointer that returns cpumask for each cpu,
> a function pointer that returns the flags for the level and a name. Only flags
> that describe topology, can be set by an architecture. The current topology
> flags are:
>
> SD_SHARE_CPUPOWER
> SD_SHARE_PKG_RESOURCES
> SD_NUMA
> SD_ASYM_PACKING
>
> Then, each level must be a subset on the next one. The build sequence of the
> sched_domain will take care of removing useless levels like those with 1 CPU
> and those with the same CPU span and no more relevant information for
> load balancing than its children.
>
> Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
> Tested-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
> Reviewed-by: Preeti U Murthy <preeti@linux.vnet.ibm.com>
> Reviewed-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
> Signed-off-by: Peter Zijlstra <peterz@infradead.org>
> Cc: Andrew Morton <akpm@linux-foundation.org>
> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
> Cc: Bjorn Helgaas <bhelgaas@google.com>
> Cc: Chris Metcalf <cmetcalf@tilera.com>
> Cc: Christoph Lameter <cl@linux.com>
> Cc: David S. Miller <davem@davemloft.net>
> Cc: Fenghua Yu <fenghua.yu@intel.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Cc: Hanjun Guo <hanjun.guo@linaro.org>
> Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
> Cc: Jason Low <jason.low2@hp.com>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
> Cc: Tony Luck <tony.luck@intel.com>
> Cc: linux390@de.ibm.com
> Cc: linux-ia64@vger.kernel.org
> Cc: linux-s390@vger.kernel.org
> Link: http://lkml.kernel.org/r/1397209481-28542-2-git-send-email-vincent.guittot@linaro.org
> Signed-off-by: Ingo Molnar <mingo@kernel.org>
> ---
> arch/ia64/include/asm/topology.h | 24 ----
> arch/s390/include/asm/topology.h | 2 -
> arch/tile/include/asm/topology.h | 33 ------
> include/linux/sched.h | 53 +++++++++
> include/linux/topology.h | 128 +++------------------
> kernel/sched/core.c | 233 ++++++++++++++++++++-------------------
> 6 files changed, 186 insertions(+), 287 deletions(-)


> diff --git a/include/linux/sched.h b/include/linux/sched.h
> index 2a4298f..656b035 100644
> --- a/include/linux/sched.h
> +++ b/include/linux/sched.h
> @@ -985,6 +1006,38 @@ void free_sched_domains(cpumask_var_t doms[], unsigned int ndoms);
>
> bool cpus_share_cache(int this_cpu, int that_cpu);
>
> +typedef const struct cpumask *(*sched_domain_mask_f)(int cpu);
> +typedef const int (*sched_domain_flags_f)(void);

I just noticed, since May 9th, linux-next (ARCH=metag, gcc 4.2.4, with
meta2_smp_defconfig) is showing loads of warnings due to the above
line:

include/linux/sched.h +1010 : warning: type qualifiers ignored on
function return type

Looks to me that the const serves no purpose in this context and could
be removed.

Cheers
James


\
 
 \ /
  Last update: 2014-05-16 12:21    [W:0.072 / U:0.892 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site