Commit 58709f6f authored by Benjamin Gray's avatar Benjamin Gray Committed by Michael Ellerman

selftests/powerpc/ptrace: Update ptrace-perf watchpoint selftest

Now that ptrace and perf are no longer exclusive, update the
test to exercise interesting interactions.

An assembly file is used for the children to allow precise instruction
choice and addresses, while avoiding any compiler quirks.
Signed-off-by: default avatarBenjamin Gray <bgray@linux.ibm.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://msgid.link/20230801011744.153973-7-bgray@linux.ibm.com
parent bd29813a
......@@ -36,6 +36,7 @@ $(TM_TESTS): CFLAGS += -I../tm -mhtm
CFLAGS += $(KHDR_INCLUDES) -fno-pie
$(OUTPUT)/ptrace-gpr: ptrace-gpr.S
$(OUTPUT)/ptrace-perf-hwbreak: ptrace-perf-asm.S
$(OUTPUT)/ptrace-pkey $(OUTPUT)/core-pkey: LDLIBS += -pthread
$(TEST_GEN_PROGS): ../harness.c ../utils.c ../lib/reg.S
/* SPDX-License-Identifier: GPL-2.0-or-later */
#include <ppc-asm.h>
.global same_watch_addr_load
.global same_watch_addr_trap
FUNC_START(same_watch_addr_child)
nop
same_watch_addr_load:
ld 0,0(3)
nop
same_watch_addr_trap:
trap
blr
FUNC_END(same_watch_addr_child)
.global perf_then_ptrace_load1
.global perf_then_ptrace_load2
.global perf_then_ptrace_trap
FUNC_START(perf_then_ptrace_child)
nop
perf_then_ptrace_load1:
ld 0,0(3)
perf_then_ptrace_load2:
ld 0,0(4)
nop
perf_then_ptrace_trap:
trap
blr
FUNC_END(perf_then_ptrace_child)
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment