aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHeiko Carstens <hca@linux.ibm.com>2021-02-02 13:46:47 +0100
committerVasily Gorbik <gor@linux.ibm.com>2021-02-09 15:57:05 +0100
commit78f6570946228d0e1dac5f42f398e3e07924b945 (patch)
treec43c16fa7dbdd8eee905283224ea88328ae51f12
parents390/time: use stcke instead of stck (diff)
downloadlinux-dev-78f6570946228d0e1dac5f42f398e3e07924b945.tar.xz
linux-dev-78f6570946228d0e1dac5f42f398e3e07924b945.zip
s390/entry: use cpu alternative for stck/stckf
Use a cpu alternative to switch between stck and stckf instead of making it compile time dependent. This will also make kernels compiled for old machines, but running on newer machines, use stckf. Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
-rw-r--r--arch/s390/kernel/entry.S8
1 files changed, 3 insertions, 5 deletions
diff --git a/arch/s390/kernel/entry.S b/arch/s390/kernel/entry.S
index 785425b59ac1..9b3aea98f886 100644
--- a/arch/s390/kernel/entry.S
+++ b/arch/s390/kernel/entry.S
@@ -106,12 +106,10 @@ _LPP_OFFSET = __LC_LPP
2: la %r11,STACK_FRAME_OVERHEAD(%r15)
.endm
+ # Use STORE CLOCK by default, switch to STORE CLOCK FAST if available.
.macro STCK savearea
-#ifdef CONFIG_HAVE_MARCH_Z9_109_FEATURES
- .insn s,0xb27c0000,\savearea # store clock fast
-#else
- .insn s,0xb2050000,\savearea # store clock
-#endif
+ ALTERNATIVE ".insn s,0xb2050000,\savearea", \
+ ".insn s,0xb27c0000,\savearea", 25
.endm
/*