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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 12 Mar 2007 16:54:51 -0700
From:	Ethan Solomita <solo@...gle.com>
To:	Andi Kleen <ak@...e.de>
CC:	akpm@...l.org, linux-kernel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: [PATCH 1/1] mm: Inconsistent use of node IDs

Andi Kleen wrote:
> On Monday 12 March 2007 23:51, Ethan Solomita wrote:
>> This patch corrects inconsistent use of node numbers (variously "nid" or
>> "node") in the presence of fake NUMA.
> 
> I think it's very consistent -- your patch would make it inconsistent though.

	It's consistent to call node_online() with a physical node ID when the 
online node mask is composed of fake nodes?

> Sorry, but when you ask for NUMA emulation you will get it. I don't see
> any point in a "half way only for some subsystems I like" NUMA emulation. 
> It's unlikely that your ideas of where it is useful and where is not
> matches other NUMA emulation user's ideas too.

	I don't understand your comments. My code is intended to work for all 
systems. If the system is non-NUMA by nature, then all CPUs map to fake 
node 0.

	As an example, on a two chip dual-core AMD opteron system, there are 4 
"cpus" where CPUs 0 and 1 are close to the first half of memory, and 
CPUs 2 and 3 are close to the second half. Without this change CPUs 2 
and 3 are mapped to fake node 1. This results in awful performance. With 
this change, CPUs 2 and 3 are mapped to (roughly) 1/2 the fake node 
count. Their zonelists[] are ordered to do allocations preferentially 
from zones that are local to CPUs 2 and 3.

	Can you tell me the scenario where my code makes things worse?

> Besides adding such a secondary node space would be likely a huge long term 
> mainteance issue. I just can it see breaking with every non trivial change.

	I'm adding no data structures to do this. The current code already has 
get_phys_node. My changes use the existing information about node 
layout, both the physical and fake, and defines a mapping. The current 
mapping just takes a physical node and says "it's the fake node too".

> NACK.

	I wish you would include some specifics as to why you think what you 
do. You're suggesting we leave in place a system that destroys NUMA 
locality when using fake numa, and passes around physical node ids as an 
index into nodes[] whihc is indexed by fake nodes. My change has no 
effect without fake numa, and harms no one with fake numa.
	-- Ethan
-
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