/Linux-v4.19/include/linux/ |
D | kprobes.h | 61 struct kprobe; 65 typedef int (*kprobe_pre_handler_t) (struct kprobe *, struct pt_regs *); 66 typedef void (*kprobe_post_handler_t) (struct kprobe *, struct pt_regs *, 68 typedef int (*kprobe_fault_handler_t) (struct kprobe *, struct pt_regs *, 73 struct kprobe { struct 127 static inline int kprobe_gone(struct kprobe *p) in kprobe_gone() 133 static inline int kprobe_disabled(struct kprobe *p) in kprobe_disabled() 139 static inline int kprobe_optimized(struct kprobe *p) in kprobe_optimized() 145 static inline int kprobe_ftrace(struct kprobe *p) in kprobe_ftrace() 161 struct kprobe kp; [all …]
|
/Linux-v4.19/kernel/ |
D | kprobes.c | 70 static DEFINE_PER_CPU(struct kprobe *, kprobe_instance) = NULL; 320 static inline void set_kprobe_instance(struct kprobe *kp) in set_kprobe_instance() 336 struct kprobe *get_kprobe(void *addr) in get_kprobe() 339 struct kprobe *p; in get_kprobe() 351 static int aggr_pre_handler(struct kprobe *p, struct pt_regs *regs); 354 static inline int kprobe_aggrprobe(struct kprobe *p) in kprobe_aggrprobe() 360 static inline int kprobe_unused(struct kprobe *p) in kprobe_unused() 369 static inline void copy_kprobe(struct kprobe *ap, struct kprobe *p) in copy_kprobe() 383 void opt_pre_handler(struct kprobe *p, struct pt_regs *regs) in opt_pre_handler() 385 struct kprobe *kp; in opt_pre_handler() [all …]
|
D | test_kprobes.c | 35 static int kp_pre_handler(struct kprobe *p, struct pt_regs *regs) in kp_pre_handler() 45 static void kp_post_handler(struct kprobe *p, struct pt_regs *regs, in kp_post_handler() 59 static struct kprobe kp = { 96 static int kp_pre_handler2(struct kprobe *p, struct pt_regs *regs) in kp_pre_handler2() 102 static void kp_post_handler2(struct kprobe *p, struct pt_regs *regs, in kp_post_handler2() 112 static struct kprobe kp2 = { 121 struct kprobe *kps[2] = {&kp, &kp2}; in test_kprobes()
|
/Linux-v4.19/arch/sh/kernel/ |
D | kprobes.c | 20 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 23 static DEFINE_PER_CPU(struct kprobe, saved_current_opcode); 24 static DEFINE_PER_CPU(struct kprobe, saved_next_opcode); 25 static DEFINE_PER_CPU(struct kprobe, saved_next_opcode2); 43 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 55 void __kprobes arch_copy_kprobe(struct kprobe *p) in arch_copy_kprobe() 61 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 68 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 75 int __kprobes arch_trampoline_kprobe(struct kprobe *p) in arch_trampoline_kprobe() 91 struct kprobe *p = get_kprobe((kprobe_opcode_t *) pc + 1); in kprobe_handle_illslot() [all …]
|
/Linux-v4.19/arch/s390/kernel/ |
D | kprobes.c | 25 DEFINE_PER_CPU(struct kprobe *, current_kprobe); 56 static void copy_instruction(struct kprobe *p) in copy_instruction() 96 static int s390_get_insn_slot(struct kprobe *p) in s390_get_insn_slot() 112 static void s390_free_insn_slot(struct kprobe *p) in s390_free_insn_slot() 124 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 138 int arch_check_ftrace_location(struct kprobe *p) in arch_check_ftrace_location() 144 struct kprobe *p; 152 struct kprobe *p = args->p; in swap_instruction() 177 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 185 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() [all …]
|
/Linux-v4.19/arch/arc/kernel/ |
D | kprobes.c | 23 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 26 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 40 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 48 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 56 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 94 static inline void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() 99 static void __kprobes resume_execution(struct kprobe *p, unsigned long addr, in resume_execution() 128 static void __kprobes setup_singlestep(struct kprobe *p, struct pt_regs *regs) in setup_singlestep() 198 struct kprobe *p; in arc_kprobe_handler() 250 struct kprobe *cur = kprobe_running(); in arc_post_kprobe_handler() [all …]
|
/Linux-v4.19/arch/sparc/kernel/ |
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() 93 static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs, in set_current_kprobe() 101 static void __kprobes prepare_singlestep(struct kprobe *p, struct pt_regs *regs, in prepare_singlestep() 118 struct kprobe *p; in kprobe_handler() 201 static unsigned long __kprobes relbranch_fixup(u32 insn, struct kprobe *p, in relbranch_fixup() 277 static void __kprobes resume_execution(struct kprobe *p, in resume_execution() 295 struct kprobe *cur = kprobe_running(); in post_kprobe_handler() [all …]
|
/Linux-v4.19/arch/powerpc/kernel/ |
D | kprobes.c | 41 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 118 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 152 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 158 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 164 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 173 static nokprobe_inline void prepare_singlestep(struct kprobe *p, struct pt_regs *regs) in prepare_singlestep() 200 static nokprobe_inline void set_current_kprobe(struct kprobe *p, struct pt_regs *regs, in set_current_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() 407 static int trampoline_probe_handler(struct kprobe *p, struct pt_regs *regs) in trampoline_probe_handler() [all …]
|
/Linux-v4.19/arch/arm64/kernel/probes/ |
D | kprobes.c | 39 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 45 static void __kprobes arch_prepare_ss_slot(struct kprobe *p) in arch_prepare_ss_slot() 61 static void __kprobes arch_prepare_simulate(struct kprobe *p) in arch_prepare_simulate() 67 static void __kprobes arch_simulate_insn(struct kprobe *p, struct pt_regs *regs) in arch_simulate_insn() 78 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() 139 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 144 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 164 static void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() 233 static void __kprobes setup_singlestep(struct kprobe *p, in setup_singlestep() [all …]
|
/Linux-v4.19/arch/mips/kernel/ |
D | kprobes.c | 54 DEFINE_PER_CPU(struct kprobe *, current_kprobe); 86 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 147 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 153 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 159 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 185 static void set_current_kprobe(struct kprobe *p, struct pt_regs *regs, in set_current_kprobe() 206 static int evaluate_branch_instruction(struct kprobe *p, struct pt_regs *regs, in evaluate_branch_instruction() 240 static void prepare_singlestep(struct kprobe *p, struct pt_regs *regs, in prepare_singlestep() 273 static void __kprobes resume_execution(struct kprobe *p, in resume_execution() 287 struct kprobe *p; in kprobe_handler() [all …]
|
/Linux-v4.19/arch/arm/probes/kprobes/ |
D | test-core.c | 313 static int __kprobes pre_handler(struct kprobe *p, struct pt_regs *regs) in pre_handler() 321 static void __kprobes post_handler(struct kprobe *p, struct pt_regs *regs, in post_handler() 329 static struct kprobe the_kprobe = { 501 benchmark_pre_handler(struct kprobe *p, struct pt_regs *regs) in benchmark_pre_handler() 523 struct kprobe k = { in kprobe_benchmark() 1164 struct kprobe kprobe; member 1172 unregister_kprobe(&probe->kprobe); in unregister_test_probe() 1173 probe->kprobe.flags = 0; /* Clear disable flag to allow reuse */ in unregister_test_probe() 1185 ret = register_kprobe(&probe->kprobe); in register_test_probe() 1194 test_before_pre_handler(struct kprobe *p, struct pt_regs *regs) in test_before_pre_handler() [all …]
|
D | core.c | 50 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 54 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 126 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 184 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 190 void __kprobes arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 210 static void __kprobes set_current_kprobe(struct kprobe *p) in set_current_kprobe() 216 singlestep_skip(struct kprobe *p, struct pt_regs *regs) in singlestep_skip() 230 singlestep(struct kprobe *p, struct pt_regs *regs, struct kprobe_ctlblk *kcb) in singlestep() 244 struct kprobe *p, *cur; in kprobe_handler() 339 struct kprobe *cur = kprobe_running(); in kprobe_fault_handler() [all …]
|
/Linux-v4.19/arch/x86/kernel/kprobes/ |
D | core.c | 69 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 220 struct kprobe *kp; in __recover_probed_insn() 406 static int prepare_boost(kprobe_opcode_t *buf, struct kprobe *p, in prepare_boost() 448 static int arch_copy_kprobe(struct kprobe *p) in arch_copy_kprobe() 477 int arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 500 void arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 505 void arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() 510 void arch_remove_kprobe(struct kprobe *p) in arch_remove_kprobe() 537 set_current_kprobe(struct kprobe *p, struct pt_regs *regs, in set_current_kprobe() 578 static void setup_singlestep(struct kprobe *p, struct pt_regs *regs, in setup_singlestep() [all …]
|
/Linux-v4.19/arch/ia64/kernel/ |
D | kprobes.c | 38 DEFINE_PER_CPU(struct kprobe *, current_kprobe) = NULL; 101 struct kprobe *p) in update_kprobe_inst_flag() 301 struct kprobe *p, in prepare_break_inst() 402 static void __kprobes set_current_kprobe(struct kprobe *p, in set_current_kprobe() 420 int __kprobes trampoline_probe_handler(struct kprobe *p, struct pt_regs *regs) in trampoline_probe_handler() 558 static void __kprobes prepare_booster(struct kprobe *p) in prepare_booster() 562 struct kprobe *other_kp; in prepare_booster() 577 int __kprobes arch_prepare_kprobe(struct kprobe *p) in arch_prepare_kprobe() 616 void __kprobes arch_arm_kprobe(struct kprobe *p) in arch_arm_kprobe() 643 void __kprobes arch_disarm_kprobe(struct kprobe *p) in arch_disarm_kprobe() [all …]
|
/Linux-v4.19/arch/arc/include/asm/ |
D | kprobes.h | 34 struct kprobe; 36 void arch_remove_kprobe(struct kprobe *p); 42 struct kprobe *kp;
|
/Linux-v4.19/arch/mips/include/asm/ |
D | kprobes.h | 37 struct kprobe; 55 void arch_remove_kprobe(struct kprobe *p); 64 struct kprobe *kp;
|
/Linux-v4.19/arch/sh/include/asm/ |
D | kprobes.h | 26 struct kprobe; 28 void arch_remove_kprobe(struct kprobe *); 38 struct kprobe *kp;
|
/Linux-v4.19/Documentation/ |
D | kprobes.txt | 36 (also called return probes). A kprobe can be inserted on virtually 63 When a kprobe is registered, Kprobes makes a copy of the probed 70 associated with the kprobe, passing the handler the addresses of the 71 kprobe struct and the saved registers. 80 "post_handler," if any, that is associated with the kprobe. 109 When you call register_kretprobe(), Kprobes establishes a kprobe at 114 At boot time, Kprobes registers a kprobe at the trampoline. 147 field of the kretprobe struct. Whenever the kprobe placed by kretprobe at the 182 Kprobes inserts an ordinary, breakpoint-based kprobe at the specified 235 If the kprobe can be optimized, Kprobes enqueues the kprobe to an [all …]
|
/Linux-v4.19/drivers/misc/lkdtm/ |
D | core.c | 59 static int lkdtm_kprobe_handler(struct kprobe *kp, struct pt_regs *regs); 64 .kprobe = { \ 79 struct kprobe kprobe; member 190 static struct kprobe *lkdtm_kprobe; 244 if (!crashpoint->kprobe.symbol_name) { in lkdtm_register_cpoint() 254 lkdtm_kprobe = &crashpoint->kprobe; in lkdtm_register_cpoint() 258 crashpoint->kprobe.symbol_name); in lkdtm_register_cpoint() 273 static int lkdtm_kprobe_handler(struct kprobe *kp, struct pt_regs *regs) in lkdtm_kprobe_handler()
|
/Linux-v4.19/samples/kprobes/ |
D | kprobe_example.c | 22 static struct kprobe kp = { 27 static int handler_pre(struct kprobe *p, struct pt_regs *regs) in handler_pre() 56 static void handler_post(struct kprobe *p, struct pt_regs *regs, in handler_post() 86 static int handler_fault(struct kprobe *p, struct pt_regs *regs, int trapnr) in handler_fault()
|
/Linux-v4.19/arch/s390/include/asm/ |
D | kprobes.h | 39 struct kprobe; 61 struct kprobe *kp; 73 void arch_remove_kprobe(struct kprobe *p);
|
/Linux-v4.19/arch/arm/include/asm/ |
D | kprobes.h | 33 struct kprobe; 39 struct kprobe *kp; 49 void arch_remove_kprobe(struct kprobe *);
|
/Linux-v4.19/arch/powerpc/include/asm/ |
D | kprobes.h | 43 struct kprobe; 68 extern void arch_remove_kprobe(struct kprobe *p); 82 struct kprobe *kp;
|
/Linux-v4.19/arch/ia64/include/asm/ |
D | kprobes.h | 61 struct kprobe; 76 struct kprobe *kp; 128 extern void arch_remove_kprobe(struct kprobe *p);
|
/Linux-v4.19/arch/x86/include/asm/ |
D | kprobes.h | 38 struct kprobe; 67 void arch_remove_kprobe(struct kprobe *p); 103 struct kprobe *kp;
|