s390/smp: reallocate IPL CPU lowcore
authorAlexander Gordeev <agordeev@linux.ibm.com>
Thu, 6 May 2021 14:26:52 +0000 (16:26 +0200)
committerVasily Gorbik <gor@linux.ibm.com>
Mon, 7 Jun 2021 15:07:00 +0000 (17:07 +0200)
commit5789284710aa121416524acc54ac0d8c27c3c2ef
tree75ff457c49a4d1a6525e2245eedc250e9729ba29
parentbdb8c9353ead1a4176e9ba034ea7ceb210c8a59c
s390/smp: reallocate IPL CPU lowcore

The lowcore for IPL CPU is special. It is allocated early
in the boot process using memblock and never freed since.
The reason is pcpu_alloc_lowcore() and pcpu_free_lowcore()
routines use page allocator which is not available when
the IPL CPU is getting initialized.

Similar problem is already addressed for stacks - once the
virtual memory is available the early boot stacks get re-
allocated. Doing the same for lowcore will allow freeing
the IPL CPU lowcore and make no difference between the
boot and secondary CPUs.

Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Reviewed-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/kernel/setup.c
arch/s390/kernel/smp.c