lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 18 Sep 2014 19:28:35 +0200
From:	Peter Zijlstra <peterz@...radead.org>
To:	Dave Hansen <dave@...1.net>
Cc:	mingo@...nel.org, hpa@...ux.intel.com, brice.goglin@...il.com,
	bp@...en8.de, linux-kernel@...r.kernel.org,
	dave.hansen@...ux.intel.com
Subject: Re: [RFC][PATCH 4/6] sched: eliminate "DIE" domain level when NUMA
 present

On Wed, Sep 17, 2014 at 03:33:16PM -0700, Dave Hansen wrote:
> 
> From: Dave Hansen <dave.hansen@...ux.intel.com>
> 
> The "DIE" topology level is currently defined like this:
> 
> static inline const struct cpumask *cpu_cpu_mask(int cpu)
> {
>         return cpumask_of_node(cpu_to_node(cpu));
> }
> 
> But that makes very little sense on a NUMA system since
> the lowest-domain NUMA node is guaranteed to be essentially
> the same as this level.
> 
> We leave this for systems that are !CONFIG_NUMA and that
> might need a top-level domain.
> 
> This also keeps us from having screwy topologies when the
> smallest NUMA node is only _part_ of the die.
> 
> Signed-off-by: Dave Hansen <dave.hansen@...ux.intel.com>
> ---
> 
>  b/kernel/sched/core.c |    2 ++
>  1 file changed, 2 insertions(+)
> 
> diff -puN kernel/sched/core.c~die-is-NUMA-based-and-screwed-up kernel/sched/core.c
> --- a/kernel/sched/core.c~die-is-NUMA-based-and-screwed-up	2014-09-17 15:28:57.867588315 -0700
> +++ b/kernel/sched/core.c	2014-09-17 15:28:57.873588591 -0700
> @@ -6141,7 +6141,9 @@ static struct sched_domain_topology_leve
>  #ifdef CONFIG_SCHED_MC
>  	{ cpu_coregroup_mask, cpu_core_flags, SD_INIT_NAME(MC) },
>  #endif
> +#ifndef CONFIG_NUMA
>  	{ cpu_cpu_mask, SD_INIT_NAME(DIE) },
> +#endif
>  	{ NULL, },
>  };

Yeah, no. Also, looking at it now, I see why it worked and how its been
wrong :-) As you say it returns the node mask, not the PKG mask as it
should have been doing.

So don't change the default topology, in general I'd say its still true
that you get one or more packages inside a node. Change override the
default topology in arch code.



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ