Home
last modified time | relevance | path

Searched refs:ptrace (Results 1 – 25 of 120) sorted by relevance

12345

/linux/tools/testing/selftests/powerpc/ptrace/
H A DMakefile3 TM_TESTS := ptrace-tm-gpr
4 TM_TESTS += ptrace-tm-spd-gpr
5 TM_TESTS += ptrace-tm-spd-tar
6 TM_TESTS += ptrace-tm-spd-vsx
7 TM_TESTS += ptrace-tm-spr
8 TM_TESTS += ptrace-tm-tar
9 TM_TESTS += ptrace-tm-vsx
14 TESTS_64 += ptrace-hwbreak
15 TESTS_64 += ptrace-perf-hwbreak
16 TESTS_64 += ptrace-pkey
[all …]
H A D.gitignore2 ptrace-gpr
3 ptrace-tm-gpr
4 ptrace-tm-spd-gpr
5 ptrace-tar
6 ptrace-tm-tar
7 ptrace-tm-spd-tar
8 ptrace-vsx
9 ptrace-tm-vsx
10 ptrace-tm-spd-vsx
11 ptrace-tm-spr
[all …]
H A Dptrace.h68 ret = ptrace(PTRACE_ATTACH, child, NULL, NULL); in start_trace()
85 ret = ptrace(PTRACE_DETACH, child, NULL, NULL); in stop_trace()
97 ret = ptrace(PTRACE_CONT, child, NULL, NULL); in cont_trace()
116 ret = ptrace(PTRACE_GETREGSET, child, type, &iov); in ptrace_read_regs()
136 ret = ptrace(PTRACE_SETREGSET, child, type, &iov); in ptrace_write_regs()
158 ret = ptrace(PTRACE_GETREGSET, child, NT_PPC_TAR, &iov); in show_tar_registers()
166 ret = ptrace(PTRACE_GETREGSET, child, NT_PPC_PPR, &iov); in show_tar_registers()
174 ret = ptrace(PTRACE_GETREGSET, child, NT_PPC_DSCR, &iov); in show_tar_registers()
206 ret = ptrace(PTRACE_SETREGSET, child, NT_PPC_TAR, &iov); in write_tar_registers()
213 ret = ptrace(PTRACE_SETREGSET, child, NT_PPC_PPR, &iov); in write_tar_registers()
[all …]
H A Dptrace-hwbreak.c54 if (ptrace(PPC_PTRACE_GETHWDBGINFO, child_pid, NULL, dbginfo)) { in get_dbginfo()
121 if (ptrace(PTRACE_TRACEME, 0, NULL, 0)) { in test_workload()
224 ptrace(PTRACE_GETSIGINFO, child_pid, NULL, &siginfo); in check_success()
241 ptrace(PTRACE_SINGLESTEP, child_pid, NULL, 0); in check_success()
248 if (ptrace(PTRACE_SET_DEBUGREG, child_pid, 0, wp_addr)) { in ptrace_set_debugreg()
256 int wh = ptrace(PPC_PTRACE_SETHWDEBUG, child_pid, 0, info); in ptrace_sethwdebug()
267 if (ptrace(PPC_PTRACE_DELHWDEBUG, child_pid, 0, wh) < 0) { in ptrace_delhwdebug()
289 ptrace(PTRACE_CONT, child_pid, NULL, 0); in test_set_debugreg()
299 ptrace(PTRACE_CONT, child_pid, NULL, 0); in test_set_debugreg()
310 ptrace(PTRACE_CONT, child_pid, NULL, 0); in test_set_debugreg()
[all …]
H A Dptrace-syscall.c74 if (ptrace(PTRACE_TRACEME, 0, 0, 0) != 0) in test_ptrace_syscall_restart()
92 if (ptrace(PTRACE_SYSEMU, chld, 0, 0) != 0) in test_ptrace_syscall_restart()
96 if (ptrace(PTRACE_GETREGS, chld, 0, &regs) != 0) in test_ptrace_syscall_restart()
127 if (ptrace(PTRACE_SETREGS, chld, 0, &regs) != 0) in test_ptrace_syscall_restart()
130 if (ptrace(PTRACE_SYSEMU, chld, 0, 0) != 0) in test_ptrace_syscall_restart()
134 if (ptrace(PTRACE_GETREGS, chld, 0, &regs) != 0) in test_ptrace_syscall_restart()
170 if (ptrace(PTRACE_SETREGS, chld, 0, &regs) != 0) in test_ptrace_syscall_restart()
173 if (ptrace(PTRACE_SYSEMU, chld, 0, 0) != 0) in test_ptrace_syscall_restart()
177 if (ptrace(PTRACE_GETREGS, chld, 0, &regs) != 0) in test_ptrace_syscall_restart()
203 if (ptrace(PTRACE_CONT, chld, 0, 0) != 0) in test_ptrace_syscall_restart()
/linux/arch/powerpc/kernel/ptrace/
H A DMakefile8 obj-y += ptrace.o ptrace-view.o
9 obj-y += ptrace-fpu.o
11 obj-$(CONFIG_VSX) += ptrace-vsx.o
13 obj-y += ptrace-novsx.o
15 obj-$(CONFIG_ALTIVEC) += ptrace-altivec.o
16 obj-$(CONFIG_SPE) += ptrace-spe.o
17 obj-$(CONFIG_PPC_TRANSACTIONAL_MEM) += ptrace-tm.o
18 obj-$(CONFIG_PPC_ADV_DEBUG_REGS) += ptrace-adv.o
20 obj-y += ptrace-noadv.o
/linux/tools/perf/arch/x86/tests/
H A Dbp-modify.c40 int err = ptrace(PTRACE_TRACEME, 0, NULL, NULL); in spawn_child()
81 if (ptrace(PTRACE_POKEUSER, child, in bp_modify1()
87 if (ptrace(PTRACE_POKEUSER, child, in bp_modify1()
93 if (ptrace(PTRACE_POKEUSER, child, in bp_modify1()
99 if (ptrace(PTRACE_CONT, child, NULL, NULL)) { in bp_modify1()
110 rip = ptrace(PTRACE_PEEKUSER, child, in bp_modify1()
119 if (ptrace(PTRACE_DETACH, child, NULL, NULL)) { in bp_modify1()
154 if (ptrace(PTRACE_POKEUSER, child, in bp_modify2()
160 if (ptrace(PTRACE_POKEUSER, child, in bp_modify2()
166 if (!ptrace(PTRACE_POKEUSER, child, in bp_modify2()
[all …]
/linux/tools/testing/selftests/arm64/fp/
H A DMakefile9 fp-ptrace \
11 sve-ptrace sve-probe-vls \
13 za-fork za-ptrace
20 zt-ptrace \
30 $(OUTPUT)/fp-ptrace: fp-ptrace.c fp-ptrace-asm.S
35 $(OUTPUT)/sve-ptrace: sve-ptrace.c
47 $(OUTPUT)/za-ptrace: za-ptrace.c
50 $(OUTPUT)/zt-ptrace: zt-ptrace.c
H A D.gitignore2 fp-ptrace
9 sve-ptrace
15 za-ptrace
17 zt-ptrace
H A Dzt-ptrace.c45 if (ptrace(PTRACE_TRACEME, -1, NULL, NULL)) in do_child()
77 if (ptrace(PTRACE_GETREGSET, pid, NT_ARM_ZA, &iov)) in get_za()
99 return ptrace(PTRACE_SETREGSET, pid, NT_ARM_ZA, &iov); in set_za()
108 return ptrace(PTRACE_GETREGSET, pid, NT_ARM_ZT, &iov); in get_zt()
117 return ptrace(PTRACE_SETREGSET, pid, NT_ARM_ZT, &iov); in set_zt()
288 if (ptrace(PTRACE_GETSIGINFO, pid, NULL, &si)) { in do_parent()
307 if (ptrace(PTRACE_CONT, pid, NULL, sig)) { in do_parent()
/linux/tools/testing/selftests/riscv/vector/
H A Dvalidate_v_ptrace.c48 ASSERT_EQ(0, ptrace(PTRACE_ATTACH, pid, NULL, NULL)); in TEST()
54 ASSERT_EQ(0, ptrace(PTRACE_POKEDATA, pid, &chld_lock, 0)); in TEST()
58 ASSERT_EQ(0, ptrace(PTRACE_CONT, pid, NULL, NULL)); in TEST()
73 ret = ptrace(PTRACE_GETREGSET, pid, NT_RISCV_VECTOR, &iov); in TEST()
155 ASSERT_EQ(0, ptrace(PTRACE_ATTACH, pid, NULL, NULL)); in TEST()
161 ASSERT_EQ(0, ptrace(PTRACE_POKEDATA, pid, &chld_lock, 0)); in TEST()
165 ASSERT_EQ(0, ptrace(PTRACE_CONT, pid, NULL, NULL)); in TEST()
172 vstart_csr = ptrace(PTRACE_PEEKDATA, pid, &vstart, NULL); in TEST()
176 vl_csr = ptrace(PTRACE_PEEKDATA, pid, &vl, NULL); in TEST()
180 vtype_csr = ptrace(PTRACE_PEEKDATA, pid, &vtype, NULL); in TEST()
[all …]
/linux/tools/testing/selftests/arm64/abi/
H A Dptrace.c45 ret = ptrace(PTRACE_GETREGSET, child, NT_ARM_TLS, &read_iov); in test_tpidr()
51 ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov); in test_tpidr()
55 ret = ptrace(PTRACE_GETREGSET, child, NT_ARM_TLS, &read_iov); in test_tpidr()
61 ret = ptrace(PTRACE_GETREGSET, child, NT_ARM_TLS, &read_iov); in test_tpidr()
82 ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov); in test_tpidr()
90 ret = ptrace(PTRACE_GETREGSET, child, NT_ARM_TLS, &read_iov); in test_tpidr()
112 ret = ptrace(PTRACE_SETREGSET, child, NT_ARM_TLS, &write_iov); in test_tpidr()
117 ret = ptrace(PTRACE_GETREGSET, child, NT_ARM_TLS, in test_tpidr()
145 ret = ptrace(PTRACE_GETREGSET, child, type, &iov); in test_hw_debug()
165 if (ptrace(PTRACE_TRACEME, -1, NULL, NULL)) in do_child()
[all …]
/linux/tools/testing/selftests/breakpoints/
H A Dbreakpoint_test.c46 ret = ptrace(PTRACE_POKEUSER, child_pid, in set_breakpoint_addr()
88 dr7 = ptrace(PTRACE_PEEKUSER, child_pid, in toggle_breakpoint()
108 ret = ptrace(PTRACE_POKEUSER, child_pid, in toggle_breakpoint()
209 ret = ptrace(PTRACE_TRACEME, 0, NULL, 0); in trigger_tests()
276 child_nr_tests = ptrace(PTRACE_PEEKDATA, child_pid, in check_success()
280 if (ptrace(PTRACE_POKEDATA, child_pid, &trapped, 1)) in check_success()
299 ptrace(PTRACE_CONT, child_pid, NULL, 0); in launch_instruction_breakpoints()
321 ptrace(PTRACE_CONT, child_pid, NULL, 0); in launch_watchpoints()
377 ptrace(PTRACE_CONT, child_pid, NULL, 0); in launch_tests()
381 ptrace(PTRACE_CONT, child_pid, NULL, 0); in launch_tests()
[all …]
H A Dbreakpoint_test_arm64.c37 if (ptrace(PTRACE_TRACEME, 0, NULL, NULL) != 0) { in child()
98 if (ptrace(PTRACE_SETREGSET, pid, NT_ARM_HW_WATCH, &iov) == 0) in set_watchpoint()
146 if (ptrace(PTRACE_CONT, pid, NULL, NULL) < 0) { in run_test()
173 if (ptrace(PTRACE_GETSIGINFO, pid, NULL, &siginfo) != 0) { in run_test()
/linux/tools/testing/selftests/landlock/
H A Dptrace_test.c18 #include <sys/ptrace.h>
99 * Yama's scoped ptrace is presumed disabled. If enabled, this optional
203 ret = ptrace(PTRACE_ATTACH, parent, NULL, 0); in TEST_F()
213 ASSERT_EQ(0, ptrace(PTRACE_DETACH, parent, NULL, 0)); in TEST_F()
217 ret = ptrace(PTRACE_TRACEME); in TEST_F()
259 ASSERT_EQ(0, ptrace(PTRACE_DETACH, child, NULL, 0)); in TEST_F()
262 EXPECT_EQ(-1, ptrace(PTRACE_DETACH, child, NULL, 0)); in TEST_F()
275 ret = ptrace(PTRACE_ATTACH, child, NULL, 0); in TEST_F()
286 ASSERT_EQ(0, ptrace(PTRACE_DETACH, child, NULL, 0)); in TEST_F()
302 " blockers=ptrace opi in matches_log_ptrace()
[all...]
/linux/Documentation/admin-guide/LSM/
H A DYama.rst26 exist and remain possible if ptrace is allowed to operate as before.
27 Since ptrace is not commonly used by non-developers and non-admins, system
31 specifically disallow such ptrace attachment (e.g. ssh-agent), but many
32 do not. A more general solution is to only allow ptrace directly from a
44 to ptrace each other. If a process wishes to entirely disable these ptrace
51 0 - classic ptrace permissions:
58 1 - restricted ptrace:
68 only processes with ``CAP_SYS_PTRACE`` may use ptrace, either with
72 no processes may use ptrace with ``PTRACE_ATTACH`` nor via
/linux/tools/testing/selftests/x86/
H A Dfsgsbase_restore.c161 if (ptrace(PTRACE_TRACEME, 0, 0, 0) != 0) in main()
189 if (ptrace(PTRACE_GETREGS, chld, NULL, &regs) != 0) in main()
207 if (ptrace(PTRACE_SETREGS, chld, NULL, &regs2) != 0) in main()
209 if (ptrace(PTRACE_CONT, chld, NULL, NULL) != 0) in main()
217 if (ptrace(PTRACE_SETREGS, chld, NULL, &regs) != 0) in main()
219 if (ptrace(PTRACE_DETACH, chld, NULL, NULL) != 0) in main()
/linux/arch/um/os-Linux/
H A Dstart_up.c48 ptrace(PTRACE_TRACEME, 0, 0, 0) < 0) { in ptrace_child()
131 if (ptrace(PTRACE_CONT, pid, 0, 0) < 0) in stop_ptraced_child()
150 if ((ptrace(PTRACE_SETOPTIONS, pid, 0, in check_sysemu()
156 if (ptrace(PTRACE_SYSEMU_SINGLESTEP, pid, 0, 0) < 0) in check_sysemu()
169 n = ptrace(PTRACE_POKEUSER, pid, PT_SYSCALL_RET_OFFSET, in check_sysemu()
203 if ((ptrace(PTRACE_SETOPTIONS, pid, 0, in check_ptrace()
208 if (ptrace(PTRACE_SYSCALL, pid, 0, 0) < 0) in check_ptrace()
220 syscall = ptrace(PTRACE_PEEKUSER, pid, PT_SYSCALL_NR_OFFSET, in check_ptrace()
223 n = ptrace(PTRACE_POKEUSER, pid, PT_SYSCALL_NR_OFFSET, in check_ptrace()
/linux/tools/testing/selftests/riscv/cfi/
H A Dcfitests.c8 #include <linux/ptrace.h>
48 long ptrace(int request, pid_t pid, void *addr, void *data);
68 ptrace(PTRACE_TRACEME, 0, NULL, NULL); in cfi_ptrace_test()
89 ret = ptrace(PTRACE_GETREGSET, pid, (void *)NT_RISCV_USER_CFI, &iov); in cfi_ptrace_test()
115 ret = ptrace(PTRACE_SETREGSET, pid, (void *)NT_RISCV_USER_CFI, &iov); in cfi_ptrace_test()
123 ptrace(PTRACE_CONT, pid, NULL, NULL); in cfi_ptrace_test()
131 ksft_print_msg("%s, ptrace test succeeded\n", __func__); in cfi_ptrace_test()
/linux/arch/x86/um/os-Linux/
H A Dregisters.c31 if (ptrace(PTRACE_GETREGSET, pid, ptrace_regset, &iov) < 0) in get_fp_registers()
43 if (ptrace(PTRACE_SETREGSET, pid, ptrace_regset, &iov) < 0) in put_fp_registers()
63 ret = ptrace(PTRACE_GETREGSET, pid, ptrace_regset, &iov); in arch_init_registers()
74 ret = ptrace(PTRACE_GETREGSET, pid, ptrace_regset, &iov); in arch_init_registers()
/linux/tools/testing/selftests/ptrace/
H A Dvmaccess.c20 ptrace(PTRACE_TRACEME, 0, 0L, 0L); in thread()
59 k = ptrace(PTRACE_ATTACH, pid, 0L, 0L); in TEST()
69 k = ptrace(PTRACE_ATTACH, pid, 0L, 0L); in TEST()
75 k = ptrace(PTRACE_DETACH, pid, 0L, 0L); in TEST()
/linux/Documentation/translations/zh_CN/userspace-api/
H A Dseccomp_filter.rst110 当返回的时候,这个值会使得内核在执行系统调用前尝试去通知一个基于 ``ptrace()``
113 如果追踪器通过 ``ptrace(PTRACE_SETOPTIONS)`` 请求了 ``PTRACE_O_TRACESECCOMP``,
122 ptrace的使用,甚至其他沙箱进程也不行,除非非常小心;ptrace可以通过这个机制来逃
230 内存的指针。进程的内存可以通过 ``ptrace()`` 或 ``/proc/pid/mem`` 由合适的特权跟踪
/linux/tools/testing/selftests/arm64/gcs/
H A Dlibc-gcs.c159 if (ptrace(PTRACE_TRACEME, -1, NULL, NULL)) in TEST()
198 if (ptrace(PTRACE_GETSIGINFO, pid, NULL, &si)) { in TEST()
219 if (ptrace(PTRACE_CONT, pid, NULL, sig)) { in TEST()
233 ret = ptrace(PTRACE_GETREGSET, child, NT_ARM_GCS, &iov); in TEST()
255 val = ptrace(PTRACE_PEEKDATA, child, (void *)gcspr, NULL); in TEST()
278 ret = ptrace(PTRACE_POKEDATA, child, (void *)gcspr, NULL); in TEST()
283 EXPECT_EQ(0, ptrace(PTRACE_PEEKDATA, child, (void *)gcspr, NULL)); in TEST()
286 ret = ptrace(PTRACE_POKEDATA, child, (void *)gcspr, val); in TEST()
291 EXPECT_EQ(val, ptrace(PTRACE_PEEKDATA, child, (void *)gcspr, NULL)); in TEST()
/linux/tools/testing/selftests/mm/
H A Dprotection_keys.c46 #include <sys/ptrace.h>
1213 * That means we can do all of our tests via ptrace() and then plain in arch_force_pkey_reg_init()
1219 ret = ptrace(PTRACE_ATTACH, child_pid, ignored, ignored); in arch_force_pkey_reg_init()
1237 ret = ptrace(PTRACE_POKEDATA, child_pid, peek_at, data);
1243 * Try to access the pkey-protected "ptr" via ptrace: in test_pkey_init_state()
1245 ret = ptrace(PTRACE_PEEKDATA, child_pid, ptr, ignored); in test_pkey_init_state()
1253 * Try to access the NON-pkey-protected "plain_ptr" via ptrace: in test_pkey_init_state()
1255 ret = ptrace(PTRACE_PEEKDATA, child_pid, plain_ptr, ignored); in test_pkey_init_state()
1260 do_not_expect_pkey_fault("read plain pointer after ptrace"); in test_pkey_init_state()
1262 ret = ptrace(PTRACE_DETAC in test_pkey_init_state()
[all...]
/linux/arch/x86/um/
H A Dptrace_user.c11 if (ptrace(PTRACE_GETREGS, pid, 0, regs_out) < 0) in ptrace_getregs()
18 if (ptrace(PTRACE_SETREGS, pid, 0, regs) < 0) in ptrace_setregs()

12345