lkml.org 
[lkml]   [2010]   [Jan]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch] x86: set hotpluggable nodes in nodes_possible_map
David Rientjes wrote:
> On Thu, 21 Jan 2010, Haicheng Li wrote:
>
>>> Nack, we don't need to add yet another nodemask because you're having
>>> trouble finding a new name for a cpu_nodes_parsed. It would be perfectly
>> Hey Dave, why do you think it's just a naming issue?
>>
>> What I'm concerning is that your assumption of cpu_nodes_parsed use is wrong,
>> cpu_nodes_parsed is needed anyway since its semantics represent the node with
>> cpu affinity rather than memless node, that's also why I originally doubted
>> cpu_node_parsed cannot handle hotplug node.
>
> Wrong, cpu_nodes_parsed (despite its name) solely represents nodes that do
> not have online address memory ranges. That's it. Nothing more, nothing
> less. That's why I suggest you rename it to no_mem_nodes or something
> similar. Look at the single time that the nodemask is used: to set
> cleared bits in node_possible_map that were not set in nodes_parsed
> because THEY DO NOT HAVE ASSOCIATED ONLINE MEMORY RANGES, the _only_ time
> a node gets set in nodes_parsed.
>
> Once you rename nodes_parsed to mem_nodes and cpu_nodes_parsed to
> no_mem_nodes, it may become clearer.
>
>> we also need hp_nodes_parsed to represent the node with hotpluggable memory
>> region, just like why we need nodes_parsed to repsent node with mem on.
>>
>
> It's pointless to add another nodemask, the semantics of cpu_nodes_parsed
> is perfectly legitimate for hotpluggable nodes as well. Instead of
> fixating on the name, look at the code that uses it.

I'm not meant to be rude, but it's illogical excuse. that it is now used by a single function
doesn't mean that it will never be used by others in future or it is only useful for that single
function.

see the code, we can find such relationships between related data-structures.
- struct bootnode nodes[] -> nodes_parsed
all the node in nodes_parsed should have a relative mem range in nodes[].

- apicid_to_node[] -> cpu_nodes_parsed
all the value of apicid_to_node[] should be valid in cpu_nodes_parsed. If we put hotpluggable node
into cpu_nodes_parsed, such relationship is broken, right?

- nodes_add[] -> ?? (this is for hotpluggable node)
all the hotplugged mem can find a corresponding node thru nodes_add[].

-haicheng


\
 
 \ /
  Last update: 2010-01-21 09:35    [W:0.101 / U:23.344 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site