Skip to content

Commit 29b06ad

Browse files
committed
s390/entry: remove broken and not needed code
LLVM's integrated assembler reports the following error when compiling entry.S: <instantiation>:38:5: error: unknown token in expression tm %r8,0x0001 # coming from user space? The correct instruction would have been tmhh instead of tm. The current code is doing nothing, since (with gas) it get's translated to a tm instruction which reads from real address 8, which again contains always zero, and therefore the conditional code is never executed. Note that due to the missing displacement gas translates "%r8" into "8(%r0)". Also code inspection reveals that this conditional code is not needed. Therefore remove it. Reviewed-by: Sven Schnelle <[email protected]> Reviewed-by: Alexander Gordeev <[email protected]> Signed-off-by: Heiko Carstens <[email protected]>
1 parent f84d88e commit 29b06ad

File tree

1 file changed

+1
-4
lines changed

1 file changed

+1
-4
lines changed

arch/s390/kernel/entry.S

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -473,10 +473,7 @@ ENTRY(\name)
473473
mvc __PT_R8(64,%r11),__LC_SAVE_AREA_ASYNC
474474
MBEAR %r11
475475
stmg %r8,%r9,__PT_PSW(%r11)
476-
tm %r8,0x0001 # coming from user space?
477-
jno 1f
478-
lctlg %c1,%c1,__LC_KERNEL_ASCE
479-
1: lgr %r2,%r11 # pass pointer to pt_regs
476+
lgr %r2,%r11 # pass pointer to pt_regs
480477
brasl %r14,\handler
481478
mvc __LC_RETURN_PSW(16),__PT_PSW(%r11)
482479
tmhh %r8,0x0001 # returning to user ?

0 commit comments

Comments
 (0)