| /linux-6.15/include/linux/ |
| H A D | kprobes.h | 49 struct kprobe; 59 struct kprobe { struct 147 struct kprobe kp; 339 struct kprobe kp; 348 struct kprobe *orig); 363 bool kprobe_disarmed(struct kprobe *p); 384 struct kprobe *get_kprobe(void *addr); 405 int register_kprobe(struct kprobe *p); 423 int disable_kprobe(struct kprobe *kp); 424 int enable_kprobe(struct kprobe *kp); [all …]
|
| /linux-6.15/kernel/ |
| H A D | kprobes.c | 377 struct kprobe *p; in get_kprobe() 406 static inline void copy_kprobe(struct kprobe *ap, struct kprobe *p) in copy_kprobe() 422 struct kprobe *kp; in opt_pre_handler() 828 static struct kprobe *alloc_aggr_kprobe(struct kprobe *p) in alloc_aggr_kprobe() 843 static void init_aggr_kprobe(struct kprobe *ap, struct kprobe *p); 882 struct kprobe *p; in optimize_all_kprobes() 1040 static struct kprobe *alloc_aggr_kprobe(struct kprobe *p) in alloc_aggr_kprobe() 1244 static int add_new_kprobe(struct kprobe *ap, struct kprobe *p) in add_new_kprobe() 1260 static void init_aggr_kprobe(struct kprobe *ap, struct kprobe *p) in init_aggr_kprobe() 1476 static struct kprobe *__get_valid_kprobe(struct kprobe *p) in __get_valid_kprobe() [all …]
|
| /linux-6.15/arch/riscv/kernel/probes/ |
| H A D | kprobes.c | 19 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 25 static void __kprobes arch_prepare_ss_slot(struct kprobe *p) in arch_prepare_ss_slot() 52 static bool __kprobes arch_check_kprobe(struct kprobe *p) in arch_check_kprobe() 67 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 108 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 117 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 124 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 194 static int __kprobes reenter_kprobe(struct kprobe *p, in reenter_kprobe() 245 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 284 struct kprobe *p, *cur_kprobe; in kprobe_breakpoint_handler() [all …]
|
| /linux-6.15/arch/parisc/kernel/ |
| H A D | kprobes.c | 17 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 20 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 41 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 50 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 55 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 72 static inline void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() 77 static void __kprobes setup_singlestep(struct kprobe *p, in setup_singlestep() 87 struct kprobe *p; in parisc_kprobe_break_handler() 138 struct kprobe *p = kprobe_running(); in parisc_kprobe_ss_handler() 190 static struct kprobe trampoline_p = { [all …]
|
| /linux-6.15/arch/sh/kernel/ |
| H A D | kprobes.c | 17 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 40 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 53 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 60 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 144 struct kprobe *op1, *op2; in prepare_singlestep() 210 struct kprobe *p; in kprobe_handler() 308 struct kprobe *cur = kprobe_running(); in post_kprobe_handler() 311 struct kprobe *p = NULL; in post_kprobe_handler() 357 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 407 struct kprobe *p = NULL; in kprobe_exceptions_notify() [all …]
|
| /linux-6.15/arch/loongarch/kernel/ |
| H A D | kprobes.c | 10 DEFINE_PER_CPU(struct kprobe *, current_kprobe); 13 static void arch_prepare_ss_slot(struct kprobe *p) in arch_prepare_ss_slot() 21 static void arch_prepare_simulate(struct kprobe *p) in arch_prepare_simulate() 27 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 61 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 69 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 76 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 210 struct kprobe *p, *cur_kprobe; in kprobe_breakpoint_handler() 272 struct kprobe *cur = kprobe_running(); in kprobe_singlestep_handler() 290 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() [all …]
|
| /linux-6.15/arch/arm64/kernel/probes/ |
| H A D | kprobes.c | 38 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 44 static void __kprobes arch_prepare_ss_slot(struct kprobe *p) in arch_prepare_ss_slot() 94 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 133 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 142 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 150 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 221 static int __kprobes reenter_kprobe(struct kprobe *p, in reenter_kprobe() 267 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 298 struct kprobe *p, *cur_kprobe; in kprobe_breakpoint_handler() 349 struct kprobe *cur = kprobe_running(); in kprobe_breakpoint_ss_handler() [all …]
|
| /linux-6.15/arch/csky/kernel/probes/ |
| H A D | kprobes.c | 16 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 78 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 114 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 120 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 125 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 190 static void __kprobes setup_singlestep(struct kprobe *p, in setup_singlestep() 220 static int __kprobes reenter_kprobe(struct kprobe *p, in reenter_kprobe() 247 struct kprobe *cur = kprobe_running(); in post_kprobe_handler() 276 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 313 struct kprobe *p, *cur_kprobe; in kprobe_breakpoint_handler() [all …]
|
| /linux-6.15/arch/arc/kernel/ |
| H A D | kprobes.c | 20 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 23 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 37 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 45 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 53 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 91 static inline void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() 196 struct kprobe *p; in arc_kprobe_handler() 248 struct kprobe *cur = kprobe_running(); in arc_post_kprobe_handler() 292 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 394 static struct kprobe trampoline_p = { [all …]
|
| /linux-6.15/arch/s390/kernel/ |
| H A D | kprobes.c | 47 static void copy_instruction(struct kprobe *p) in copy_instruction() 80 struct kprobe *kp; in can_probe() 121 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 137 struct kprobe *p; 144 struct kprobe *p = args->p; in swap_instruction() 153 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 166 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 179 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 282 struct kprobe *p; in kprobe_handler() 373 struct kprobe *p = kprobe_running(); in post_kprobe_handler() [all …]
|
| /linux-6.15/arch/sparc/kernel/ |
| H A D | kprobes.c | 45 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 50 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 65 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 71 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 118 struct kprobe *p; in kprobe_handler() 277 static void __kprobes resume_execution(struct kprobe *p, in resume_execution() 295 struct kprobe *cur = kprobe_running(); in post_kprobe_handler() 322 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 449 static int __kprobes trampoline_probe_handler(struct kprobe *p, in trampoline_probe_handler() 473 static struct kprobe trampoline_p = { [all …]
|
| /linux-6.15/arch/mips/kernel/ |
| H A D | kprobes.c | 44 DEFINE_PER_CPU(struct kprobe *, current_kprobe); 78 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 139 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 146 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 153 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 266 static void resume_execution(struct kprobe *p, in resume_execution() 281 struct kprobe *p; in kprobe_handler() 381 struct kprobe *cur = kprobe_running(); in post_kprobe_handler() 410 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() 508 int arch_trampoline_kprobe(struct kprobe *p) in arch_trampoline_kprobe() [all …]
|
| /linux-6.15/arch/powerpc/kernel/ |
| H A D | kprobes.c | 31 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 127 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 130 struct kprobe *prev; in arch_prepare_kprobe() 174 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 180 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 186 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 229 static int try_to_emulate(struct kprobe *p, struct pt_regs *regs) in try_to_emulate() 272 struct kprobe *p; in kprobe_handler() 396 struct kprobe *cur = kprobe_running(); in kprobe_post_handler() 439 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() [all …]
|
| /linux-6.15/arch/arm/probes/kprobes/ |
| H A D | test-core.c | 326 static struct kprobe the_kprobe = { 520 struct kprobe k = { in kprobe_benchmark() 1161 struct kprobe kprobe; member 1169 unregister_kprobe(&probe->kprobe); in unregister_test_probe() 1182 ret = register_kprobe(&probe->kprobe); in register_test_probe() 1242 .kprobe.pre_handler = test_before_pre_handler, 1247 .kprobe.pre_handler = test_case_pre_handler, 1251 .kprobe.pre_handler = test_after_pre_handler, 1255 .kprobe.pre_handler = test_after_pre_handler, 1411 test_after2_probe.kprobe.addr = in kprobes_test_case_start() [all …]
|
| H A D | core.c | 44 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 48 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 120 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 178 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 184 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 204 static void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() 210 singlestep_skip(struct kprobe *p, struct pt_regs *regs) in singlestep_skip() 224 singlestep(struct kprobe *p, struct pt_regs *regs, struct kprobe_ctlblk *kcb) in singlestep() 238 struct kprobe *p, *cur; in kprobe_handler() 333 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() [all …]
|
| /linux-6.15/arch/x86/kernel/kprobes/ |
| H A D | core.c | 61 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 207 struct kprobe *kp; in __recover_probed_insn() 747 static int arch_copy_kprobe(struct kprobe *p) in arch_copy_kprobe() 780 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 806 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 815 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 824 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 854 set_current_kprobe(struct kprobe *p, struct pt_regs *regs, in set_current_kprobe() 1000 struct kprobe *p; in kprobe_int3_handler() 1054 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() [all …]
|
| /linux-6.15/arch/x86/include/asm/ |
| H A D | kprobes.h | 24 struct kprobe; 51 void arch_remove_kprobe(struct kprobe *p); 80 void (*emulate_op)(struct kprobe *p, struct pt_regs *regs); 101 struct kprobe *kp;
|
| /linux-6.15/drivers/misc/lkdtm/ |
| H A D | core.c | 40 static int lkdtm_kprobe_handler(struct kprobe *kp, struct pt_regs *regs); 45 .kprobe = { \ 60 struct kprobe kprobe; member 105 static struct kprobe *lkdtm_kprobe; 175 if (!crashpoint->kprobe.symbol_name) in lkdtm_register_cpoint() 183 lkdtm_kprobe = &crashpoint->kprobe; in lkdtm_register_cpoint() 187 crashpoint->kprobe.symbol_name); in lkdtm_register_cpoint() 202 static int lkdtm_kprobe_handler(struct kprobe *kp, struct pt_regs *regs) in lkdtm_kprobe_handler()
|
| /linux-6.15/arch/sh/include/asm/ |
| H A D | kprobes.h | 26 struct kprobe; 28 void arch_remove_kprobe(struct kprobe *); 38 struct kprobe *kp;
|
| /linux-6.15/arch/arc/include/asm/ |
| H A D | kprobes.h | 31 struct kprobe; 33 void arch_remove_kprobe(struct kprobe *p); 36 struct kprobe *kp;
|
| /linux-6.15/Documentation/trace/ |
| H A D | kprobes.rst | 72 kprobe struct and the saved registers. 235 If the kprobe can be optimized, Kprobes enqueues the kprobe to an 340 kprobe address resolution code. 363 int register_kprobe(struct kprobe *kp); 460 void unregister_kprobe(struct kprobe *kp); 477 int register_kprobes(struct kprobe **kps, int num); 517 int disable_kprobe(struct kprobe *kp); 529 int enable_kprobe(struct kprobe *kp); 647 hit typically takes 50-75% longer than a kprobe hit. 653 k = kprobe; r = return probe; kr = kprobe + return probe [all …]
|
| /linux-6.15/arch/parisc/include/asm/ |
| H A D | kprobes.h | 27 struct kprobe; 29 void arch_remove_kprobe(struct kprobe *p); 43 struct kprobe *kp;
|
| /linux-6.15/arch/mips/include/asm/ |
| H A D | kprobes.h | 25 struct kprobe; 43 void arch_remove_kprobe(struct kprobe *p); 53 struct kprobe *kp;
|
| /linux-6.15/Documentation/bpf/libbpf/ |
| H A D | program_types.rst | 86 …BE`` | | ``kprobe+`` [#kprobe]_ … 88 … | | ``kretprobe+`` [#kprobe]_ | … 104 | | ``BPF_TRACE_KPROBE_MULTI`` | ``kprobe.mul… 217 .. [#kprobe] The ``kprobe`` attach format is ``kprobe/<function>[+<offset>]``. Valid 223 .. [#kpmulti] The ``kprobe.multi`` attach format is ``kprobe.multi/<pattern>`` where ``pattern``
|
| /linux-6.15/lib/tests/ |
| H A D | test_kprobes.c | 36 static int kp_pre_handler(struct kprobe *p, struct pt_regs *regs) in kp_pre_handler() 44 static void kp_post_handler(struct kprobe *p, struct pt_regs *regs, in kp_post_handler() 55 static struct kprobe kp = { 103 static int kp_pre_handler2(struct kprobe *p, struct pt_regs *regs) in kp_pre_handler2() 109 static void kp_post_handler2(struct kprobe *p, struct pt_regs *regs, in kp_post_handler2() 116 static struct kprobe kp2 = { 124 struct kprobe *kps[2] = {&kp, &kp2}; in test_kprobes() 149 static struct kprobe kp_missed = {
|