s390/numa: move numa_init_late() from device to arch_initcall

Commit 3e89e1c5ea ("hugetlb: make mm and fs code explicitly non-modular")
moves hugetlb_init() from module_init to subsys_initcall.

The hugetlb_init()->hugetlb_register_node() code accesses "node->dev.kobj"
which is initialized in numa_init_late().

Since numa_init_late() is a device_initcall which is called *after*
subsys_initcall the above mentioned patch breaks NUMA on s390.

So fix this and move numa_init_late() to arch_initcall.

Fixes: 3e89e1c5ea ("hugetlb: make mm and fs code explicitly non-modular")
Reviewed-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Michael Holzheu <holzheu@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
Michael Holzheu 2016-01-20 19:22:16 +01:00 committed by Martin Schwidefsky
parent 9cb1ccecb6
commit 2d0f76a6ca

View file

@ -160,7 +160,7 @@ static int __init numa_init_late(void)
register_one_node(nid);
return 0;
}
device_initcall(numa_init_late);
arch_initcall(numa_init_late);
static int __init parse_debug(char *parm)
{