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]
Message-ID: <20150302162854.GG17694@htj.duckdns.org>
Date:	Mon, 2 Mar 2015 11:28:54 -0500
From:	Tejun Heo <tj@...nel.org>
To:	Kamezawa Hiroyuki <kamezawa.hiroyu@...fujitsu.com>
Cc:	Gu Zheng <guz.fnst@...fujitsu.com>, linux-kernel@...r.kernel.org,
	laijs@...fujitsu.com, isimatu.yasuaki@...fujitsu.com,
	tangchen@...fujitsu.com
Subject: Re: [PATCH] workqueue: update numa affinity when node hotplug

Hello,

On Mon, Mar 02, 2015 at 05:41:05PM +0900, Kamezawa Hiroyuki wrote:
> Let me start from explaining current behavior.
> 
> - cpu-id is determined when a new processor(lapicid/x2apicid) is founded.
>   cpu-id<->nodeid relationship is _not_ recorded.

Is this something from the firmware side or is it just that we aren't
maintaining the association right now?

> - node-id is determined when a new pxm(firmware info) is founded.
>   pxm<->nodeid relationship is recorded.
> 
> By this, there are 2 cases of cpu<->nodeid change.
> 
> Case A) In x86, cpus on memory-less nodes are all tied to existing nodes(round robin).
> At memory-hotadd happens and a new node comes, cpus are moved to a newly added node
> based on pxm.

Ah, okay, so the firmware doesn't provide proximity information at all
for memory-less nodes so we end up putting all of them somewhere
random and when memory is added to one of the memory-less nodes, the
mapping information changes?

Am I understanding it correctly?  If so, it's super weird tho.  Why
wouldn't there be proximity information for a memless node?  Not
having memory doesn't mean it's at the same distance from all existing
nodes.

> Case B) Adding a node after removing another node, if pxm of them were different from
> each other, cpu<->node relatiionship changes.

I don't get this either.  Does proximity relationship actually change?
Or is it that we're assigning different IDs to the same thing?  Isn't
proximity pretty much hardwired to how the system is architected to
begin with?

> I personally thinks proper fix is building persistent cpu-id <-> lapicid relationship as
> pxm does rather than creating band-aid.

Oh if this is possible, I agree that's the right direction too.

Thanks.

-- 
tejun
--
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