Thread (12 messages) flat view 12 messages, 3 authors, 2021-04-19

Re: [PATCH 1/1] powerpc/smp: Set numa node before updating mask

From: Srikar Dronamraju <hidden>
Date: 2021-04-08 11:12:40

* Nathan Lynch [off-list ref] [2021-04-07 14:46:24]:
Srikar Dronamraju [off-list ref] writes:
quoted
* Nathan Lynch [off-list ref] [2021-04-07 07:19:10]:
quoted
Sorry for the delay in following up here.
No issues.
quoted
quoted
quoted
So I'd suggest that pseries_add_processor() be made to update
these things when the CPUs are marked present, before onlining them.
In pseries_add_processor, we are only marking the cpu as present. i.e
I believe numa_setup_cpu() would not have been called. So we may not have a
way to associate the CPU to the node. Otherwise we will have to call
numa_setup_cpu() or the hcall_vphn.

We could try calling numa_setup_cpu() immediately after we set the
CPU to be present, but that would be one more extra hcall + I dont know if
there are any more steps needed before CPU being made present and
associating the CPU to the node.
An additional hcall in this path doesn't seem too expensive.
quoted
Are we sure the node is already online?
I see that dlpar_online_cpu() calls find_and_online_cpu_nid(), so yes I
think that's covered.
Okay, 

Can we just call set_cpu_numa_node() at the end of map_cpu_to_node().
The advantage would be the update to numa_cpu_lookup_table and cpu_to_node
would happen at the same time and would be in sync.
I don't know. I guess this question just makes me wonder whether powerpc
needs to have the additional lookup table. How is it different from the
generic per_cpu numa_node?
lookup table is for early cpu to node i.e when per_cpu variables may not be
available. This would mean that calling set_numa_node/set_cpu_numa_node from
map_cpu_to_node() may not always be an option, since map_cpu_to_node() does
end up getting called very early in the system.

-- 
Thanks and Regards
Srikar Dronamraju
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help