diff options
| author | Chenghao Duan <duanchenghao@kylinos.cn> | 2025-12-31 15:19:21 +0800 |
|---|---|---|
| committer | Huacai Chen <chenhuacai@loongson.cn> | 2025-12-31 15:19:21 +0800 |
| commit | 26138762d9a27a7f1c33f467c4123c600f64a36e (patch) | |
| tree | 98b9e628e67bf7638208bfa47abf48a46c4a0266 /tools/perf/scripts/python/git@git.tavy.me:linux-stable.git | |
| parent | 61319d15a56093358c6822d30659fe2941f589f1 (diff) | |
LoongArch: BPF: Enable trampoline-based tracing for module functions
Remove the previous restrictions that blocked the tracing of kernel
module functions. Fix the issue that previously caused kernel lockups
when attempting to trace module functions.
Before entering the trampoline code, the return address register ra
shall store the address of the next assembly instruction after the
'bl trampoline' instruction, which is the traced function address, and
the register t0 shall store the parent function return address. Refine
the trampoline return logic to ensure that register data remains correct
when returning to both the traced function and the parent function.
Before this patch was applied, the module_attach test in selftests/bpf
encountered a deadlock issue. This was caused by an incorrect jump
address after the trampoline execution, which resulted in an infinite
loop within the module function.
Cc: stable@vger.kernel.org
Fixes: 677e6123e3d2 ("LoongArch: BPF: Disable trampoline for kernel module function trace")
Signed-off-by: Chenghao Duan <duanchenghao@kylinos.cn>
Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
Diffstat (limited to 'tools/perf/scripts/python/git@git.tavy.me:linux-stable.git')
0 files changed, 0 insertions, 0 deletions
