Skip to content

Commit aa0cf53

Browse files
Martin SchwidefskyZhengShunQian
authored andcommitted
s390: fix br_r1_trampoline for machines without exrl
commit 26f8438 upstream. For machines without the exrl instruction the BFP jit generates code that uses an "br %r1" instruction located in the lowcore page. Unfortunately there is a cut & paste error that puts an additional "larl %r1,.+14" instruction in the code that clobbers the branch target address in %r1. Remove the larl instruction. Cc: <[email protected]> # v4.17+ Fixes: de5cb6e ("s390: use expoline thunks in the BPF JIT") Signed-off-by: Martin Schwidefsky <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent 9f3f6d6 commit aa0cf53

File tree

1 file changed

+0
-2
lines changed

1 file changed

+0
-2
lines changed

arch/s390/net/bpf_jit_comp.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -522,8 +522,6 @@ static void bpf_jit_epilogue(struct bpf_jit *jit)
522522
/* br %r1 */
523523
_EMIT2(0x07f1);
524524
} else {
525-
/* larl %r1,.+14 */
526-
EMIT6_PCREL_RILB(0xc0000000, REG_1, jit->prg + 14);
527525
/* ex 0,S390_lowcore.br_r1_tampoline */
528526
EMIT4_DISP(0x44000000, REG_0, REG_0,
529527
offsetof(struct _lowcore, br_r1_trampoline));

0 commit comments

Comments
 (0)