diff options
author | Alexander Gordeev <agordeev@linux.ibm.com> | 2022-03-30 19:50:16 +0200 |
---|---|---|
committer | Heiko Carstens <hca@linux.ibm.com> | 2022-04-25 13:54:13 +0200 |
commit | 7714e16f791d948c8bb58aa23bf8ef60b9bba646 (patch) | |
tree | d4bdaa4fd962e599c2480b0207d2b72857dee1b0 /arch/s390/kernel/setup.c | |
parent | 28d3417a946762bed46815e59627bbd749347906 (diff) | |
download | linux-7714e16f791d948c8bb58aa23bf8ef60b9bba646.tar.gz linux-7714e16f791d948c8bb58aa23bf8ef60b9bba646.tar.bz2 linux-7714e16f791d948c8bb58aa23bf8ef60b9bba646.zip |
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 <hca@linux.ibm.com>
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Diffstat (limited to 'arch/s390/kernel/setup.c')
-rw-r--r-- | arch/s390/kernel/setup.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c index d860ac300919..8d91eccc0963 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; } |