s390/setup: rearrange absolute lowcore initialization
authorAlexander Gordeev <agordeev@linux.ibm.com>
Fri, 22 Jul 2022 18:34:05 +0000 (20:34 +0200)
committerAlexander Gordeev <agordeev@linux.ibm.com>
Thu, 28 Jul 2022 16:05:23 +0000 (18:05 +0200)
Make the absolute lowcore assignments immediately follow
the boot CPU lowcore same member assignments. This way
readability improves when reading from up to down, with
no out of order mcck stack allocation in-between.

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

index 792ba69..8f48313 100644 (file)
@@ -474,19 +474,18 @@ static void __init setup_lowcore_dat_off(void)
        lc->restart_data = 0;
        lc->restart_source = -1U;
 
-       mcck_stack = (unsigned long)memblock_alloc(THREAD_SIZE, THREAD_SIZE);
-       if (!mcck_stack)
-               panic("%s: Failed to allocate %lu bytes align=0x%lx\n",
-                     __func__, THREAD_SIZE, THREAD_SIZE);
-       lc->mcck_stack = mcck_stack + STACK_INIT_OFFSET;
-
-       /* Setup absolute zero lowcore */
        put_abs_lowcore(restart_stack, lc->restart_stack);
        put_abs_lowcore(restart_fn, lc->restart_fn);
        put_abs_lowcore(restart_data, lc->restart_data);
        put_abs_lowcore(restart_source, lc->restart_source);
        put_abs_lowcore(restart_psw, lc->restart_psw);
 
+       mcck_stack = (unsigned long)memblock_alloc(THREAD_SIZE, THREAD_SIZE);
+       if (!mcck_stack)
+               panic("%s: Failed to allocate %lu bytes align=0x%lx\n",
+                     __func__, THREAD_SIZE, THREAD_SIZE);
+       lc->mcck_stack = mcck_stack + STACK_INIT_OFFSET;
+
        lc->spinlock_lockval = arch_spin_lockval(0);
        lc->spinlock_index = 0;
        arch_spin_lock_setup(0);