kernel/arch/s390/lib/test_kprobes_asm.S
sevki c9e1dba412 chore(ci): setup github actions and workflows
setup CI/CD for kernel development
- added CodeQL for code scanning
- every pr is built as an image and is available for
  30days on https://oklinux.dev
- tagged and released on github for now

Signed-off-by: sevki <s@sevki.io>
2024-03-15 21:46:24 +00:00

45 lines
972 B
ArmAsm

/* SPDX-License-Identifier: GPL-2.0+ */
#include <linux/linkage.h>
#include <asm/ftrace.h>
#define KPROBES_TARGET_START(name) \
SYM_FUNC_START(name); \
FTRACE_GEN_NOP_ASM(name)
#define KPROBES_TARGET_END(name) \
SYM_FUNC_END(name); \
SYM_DATA(name##_offs, .quad 1b - name)
KPROBES_TARGET_START(kprobes_target_in_insn4)
.word 0x4700 // bc 0,0
1: .word 0x0000
br %r14
KPROBES_TARGET_END(kprobes_target_in_insn4)
KPROBES_TARGET_START(kprobes_target_in_insn6_lo)
.word 0xe310 // ly 1,0
1: .word 0x0000
.word 0x0058
br %r14
KPROBES_TARGET_END(kprobes_target_in_insn6_lo)
KPROBES_TARGET_START(kprobes_target_in_insn6_hi)
.word 0xe310 // ly 1,0
.word 0x0000
1: .word 0x0058
br %r14
KPROBES_TARGET_END(kprobes_target_in_insn6_hi)
KPROBES_TARGET_START(kprobes_target_bp)
nop
.word 0x0000
nop
1: br %r14
KPROBES_TARGET_END(kprobes_target_bp)
KPROBES_TARGET_START(kprobes_target_odd)
.byte 0x07
1: .byte 0x07
br %r14
KPROBES_TARGET_END(kprobes_target_odd)