]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commit
csky: Fixup perf probe -x hungup
authorGuo Ren <guoren@linux.alibaba.com>
Tue, 14 Apr 2020 12:14:12 +0000 (20:14 +0800)
committerGuo Ren <guoren@linux.alibaba.com>
Wed, 13 May 2020 09:55:05 +0000 (17:55 +0800)
commitc2e59d1f4df8783856a4e6a05a7d4a76d7cf7082
treeb4668a9c98af02140494cb7ae5ee84702f3d5c22
parentbd11aabd35287b6961d197539aa61da5ab8fc0d7
csky: Fixup perf probe -x hungup

case:
 # perf probe -x /lib/libc-2.28.9000.so memcpy
 # perf record -e probe_libc:memcpy -aR sleep 1

System hangup and cpu get in trap_c loop, because our hardware
singlestep state could still get interrupt signal. When we get in
uprobe_xol singlestep slot, we should disable irq in pt_regs->psr.

And is_swbp_insn() need a csky arch implementation with a low 16bit
mask.

Signed-off-by: Guo Ren <guoren@linux.alibaba.com>
Cc: Steven Rostedt (VMware) <rostedt@goodmis.org>
arch/csky/kernel/probes/uprobes.c
arch/csky/kernel/ptrace.c