]> git.baikalelectronics.ru Git - kernel.git/commit
s390/test_unwind: fix and extend kprobes test
authorVasily Gorbik <gor@linux.ibm.com>
Wed, 2 Feb 2022 23:49:41 +0000 (00:49 +0100)
committerVasily Gorbik <gor@linux.ibm.com>
Tue, 1 Mar 2022 20:05:09 +0000 (21:05 +0100)
commit0f7485bd5f5bd417bbf513eda9e45c0c6f005344
tree2f0e9877eb0de5e59ccf5a1cef4a3aa4c4c46282
parent9d859650a1d8b6c2a0d580f45cab353979751331
s390/test_unwind: fix and extend kprobes test

Running kprobe test on a kernel built with clang 14 didn't actually
trigger pgm_pre_handler() and no unwinder code was called. Even though
do_report_trap() is a global symbol, clang inlined it in several local
functions including illegal_op() handler, so that kprobbing a global
symbol didn't have a desired effect.

To achieve the same test result (unwinding from a program check
handler) introduce a local function and probe an instruction in the
middle, so that kprobe doesn't take KPROBE_ON_FTRACE path.

While at it, add another test for KPROBE_ON_FTRACE.

Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
arch/s390/lib/test_unwind.c