If its called before pages on the node are available then it must=20
fallback and cannot use the pages.
Please clarify the comment. This seems to indicate that we should not
do anything because the node still has memory?
Doesnt the node always have memory before offlining?
So this checks if the any kmem_cache structure is on the offlined node? If
so then we cannot offline the node?
kmem_cache_shrink(s) would be okay here I would think. The function is
reasonably fast. Offlining is a rare event.
We call this after we have established that no kmem_cache structures are=20
on this and after we have shrunk the slabs. Is there any guarantee that
no slab operations have occurrent since then?
Does this mean that the node still has memory?
It may be clearer to say:
"If nr_slabs > 0 then slabs still exist on the node that is going down.
We were unable to free them so we must fail."
The node must have memory???? Or we have already brought up the code?
"We are bringing a node online. No memory is available yet. We must=20
allocate a kmem_cache_node structure in order to bring the node online." ?
"kmem_cache_alloc node will fallback to other nodes since memory is=20
not yet available from the node that is brought up.=A8 ?