From: Alexander Gordeev Date: Wed, 30 Mar 2022 17:50:16 +0000 (+0200) Subject: s390/smp: sort out physical vs virtual CPU0 lowcore pointer X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=7714e16f791d948c8bb58aa23bf8ef60b9bba646;p=linux.git s390/smp: sort out physical vs virtual CPU0 lowcore pointer SPX instruction called from set_prefix() expects physical address of the lowcore to be installed, but instead the virtual address is passed. Note: this does not fix a bug currently, since virtual and physical addresses are identical. Reviewed-by: Heiko Carstens Signed-off-by: Alexander Gordeev Signed-off-by: Heiko Carstens --- diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index d860ac3009197..8d91eccc09632 100644 --- a/arch/s390/kernel/setup.c +++ b/arch/s390/kernel/setup.c @@ -494,7 +494,7 @@ static void __init setup_lowcore_dat_off(void) lc->return_mcck_lpswe = gen_lpswe(__LC_RETURN_MCCK_PSW); lc->preempt_count = PREEMPT_DISABLED; - set_prefix((u32)(unsigned long) lc); + set_prefix(__pa(lc)); lowcore_ptr[0] = lc; }