Re: [PATCH 0/6] mm: make movable onlining suck less

From: Reza Arbab
Date: Wed Apr 05 2017 - 11:49:50 EST


On Wed, Apr 05, 2017 at 08:42:39AM +0200, Michal Hocko wrote:
On Tue 04-04-17 16:43:39, Reza Arbab wrote:
Okay, getting further. With this I can again repeatedly add and remove, but now I'm seeing a weird variation of that earlier issue:

1. add_memory(), online_movable
/sys/devices/system/node/nodeX/memoryY symlinks are created.

2. offline, remove_memory()
The node is offlined, since all memory has been removed, so all of
/sys/devices/system/node/nodeX is gone. This is normal.

3. add_memory(), online_movable
The node is onlined, so /sys/devices/system/node/nodeX is recreated,
and the memory is added, but just like earlier in this email thread,
the memoryY links are not there.

Could you add some printks to see why the sysfs creation failed please?

Ah, simple enough. It's this, right at the top of register_mem_sect_under_node():

if (!node_online(nid))
return 0;

That being the case, I really don't understand why your patches make any difference. Is node_set_online() being called later than before somehow?

--
Reza Arbab