summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Carstens <hca@linux.ibm.com>2023-09-11 22:40:09 +0300
committerVasily Gorbik <gor@linux.ibm.com>2023-09-19 14:26:57 +0300
commit0b6529e3dc1c60565f10ccf40533b127ab3262a1 (patch)
treec9157c9ac9c302c2f65e739a53b35304c3123daf
parent305a5551af34e1848d80e095c23e94c985cc4ebc (diff)
downloadlinux-0b6529e3dc1c60565f10ccf40533b127ab3262a1.tar.xz
s390/setup: make use of system_ctl_load()
Use system_ctl_load() instead of local_ctl_load() to reflect that control register changes are supposed to be global. Even though setup_cr() was ok, note that the usage of local_ctl_load() would have been wrong, if it would have happened after the control register save area was initialized: only local control register contents would have been changed, but wouldn't be used for new CPUs. With using system_ctl_load() the caller doesn't need to take care. Signed-off-by: Heiko Carstens <hca@linux.ibm.com> Reviewed-by: Alexander Gordeev <agordeev@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
-rw-r--r--arch/s390/kernel/setup.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
index d399f18d0379..558bcf18df52 100644
--- a/arch/s390/kernel/setup.c
+++ b/arch/s390/kernel/setup.c
@@ -796,9 +796,9 @@ static void __init setup_cr(void)
cr2.ducto = (unsigned long)__ctl_duct >> 6;
cr5.pasteo = (unsigned long)__ctl_duct >> 6;
cr15.lsea = (unsigned long)__ctl_linkage_stack >> 3;
- local_ctl_load(2, &cr2.reg);
- local_ctl_load(5, &cr5.reg);
- local_ctl_load(15, &cr15.reg);
+ system_ctl_load(2, &cr2.reg);
+ system_ctl_load(5, &cr5.reg);
+ system_ctl_load(15, &cr15.reg);
}
/*