On Tue, Jul 31, 2018 at 03:04:34PM +0200, Michal Hocko wrote: > On Tue 31-07-18 08:49:11, Pavel Tatashin wrote: > > Hi Oscar, > > > > Have you looked into replacing __paginginit via __meminit ? What is > > the reason to keep both? > > All these init variants make my head spin so reducing their number is > certainly a desirable thing to do. b5a0e01132943 has added this variant > so it might give a clue about the dependencies. Looking at b5a0e011329431b90d315eaf6ca5fdb41df7a117, I cannot really see why this was not done in init.h Maybe the comitter did not want to hack directly into __meminit. I think that __paginginit was a way to abstract the whole thing without having to modify init.h directly. I guess we could get rid of it and so something like: #ifdef CONFIG_MEMORY_HOTPLUG #define __meminit __section(.meminit.text) __cold notrace \ __latent_entropy #else #define __meminit __init #endif And then we would have to replace __paginginit with __meminit. But honestly, puting an #ifdef in init.h feels a bit wierd to me, although I do not really have a strong opinion here. Thanks -- Oscar Salvador SUSE L3