Home
last modified time | relevance | path

Searched refs:bp (Results 1 – 25 of 98) sorted by relevance

1234

/arch/powerpc/kernel/
Dhw_breakpoint.c54 int arch_install_hw_breakpoint(struct perf_event *bp) in arch_install_hw_breakpoint() argument
56 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_install_hw_breakpoint()
59 *slot = bp; in arch_install_hw_breakpoint()
65 if (current->thread.last_hit_ubp != bp) in arch_install_hw_breakpoint()
80 void arch_uninstall_hw_breakpoint(struct perf_event *bp) in arch_uninstall_hw_breakpoint() argument
84 if (*slot != bp) { in arch_uninstall_hw_breakpoint()
97 void arch_unregister_hw_breakpoint(struct perf_event *bp) in arch_unregister_hw_breakpoint() argument
105 if (bp->ctx && bp->ctx->task && bp->ctx->task != ((void *)-1L)) in arch_unregister_hw_breakpoint()
106 bp->ctx->task->thread.last_hit_ubp = NULL; in arch_unregister_hw_breakpoint()
132 int hw_breakpoint_arch_parse(struct perf_event *bp, in hw_breakpoint_arch_parse() argument
[all …]
/arch/powerpc/sysdev/
Dgrackle.c26 static inline void grackle_set_stg(struct pci_controller* bp, int enable) in grackle_set_stg() argument
30 out_be32(bp->cfg_addr, GRACKLE_CFA(0, 0, 0xa8)); in grackle_set_stg()
31 val = in_le32(bp->cfg_data); in grackle_set_stg()
34 out_be32(bp->cfg_addr, GRACKLE_CFA(0, 0, 0xa8)); in grackle_set_stg()
35 out_le32(bp->cfg_data, val); in grackle_set_stg()
36 (void)in_le32(bp->cfg_data); in grackle_set_stg()
39 static inline void grackle_set_loop_snoop(struct pci_controller *bp, int enable) in grackle_set_loop_snoop() argument
43 out_be32(bp->cfg_addr, GRACKLE_CFA(0, 0, 0xa8)); in grackle_set_loop_snoop()
44 val = in_le32(bp->cfg_data); in grackle_set_loop_snoop()
47 out_be32(bp->cfg_addr, GRACKLE_CFA(0, 0, 0xa8)); in grackle_set_loop_snoop()
[all …]
/arch/xtensa/kernel/
Dhw_breakpoint.c50 int hw_breakpoint_arch_parse(struct perf_event *bp, in hw_breakpoint_arch_parse() argument
134 struct perf_event *bp) in alloc_slot() argument
140 slot[i] = bp; in alloc_slot()
147 static void set_ibreak_regs(int reg, struct perf_event *bp) in set_ibreak_regs() argument
149 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in set_ibreak_regs()
157 static void set_dbreak_regs(int reg, struct perf_event *bp) in set_dbreak_regs() argument
159 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in set_dbreak_regs()
171 int arch_install_hw_breakpoint(struct perf_event *bp) in arch_install_hw_breakpoint() argument
175 if (counter_arch_bp(bp)->type == XTENSA_BREAKPOINT_EXECUTE) { in arch_install_hw_breakpoint()
177 i = alloc_slot(this_cpu_ptr(bp_on_reg), XCHAL_NUM_IBREAK, bp); in arch_install_hw_breakpoint()
[all …]
Dptrace.c365 static void ptrace_hbptriggered(struct perf_event *bp, in ptrace_hbptriggered() argument
370 struct arch_hw_breakpoint *bkpt = counter_arch_bp(bp); in ptrace_hbptriggered()
372 if (bp->attr.bp_type & HW_BREAKPOINT_X) { in ptrace_hbptriggered()
374 if (current->thread.ptrace_bp[i] == bp) in ptrace_hbptriggered()
379 if (current->thread.ptrace_wp[i] == bp) in ptrace_hbptriggered()
418 struct perf_event *bp; in ptrace_gethbpregs() local
428 bp = child->thread.ptrace_wp[idx]; in ptrace_gethbpregs()
430 bp = child->thread.ptrace_bp[idx]; in ptrace_gethbpregs()
432 if (bp) { in ptrace_gethbpregs()
433 user_data[0] = bp->attr.bp_addr; in ptrace_gethbpregs()
[all …]
/arch/x86/kernel/
Dunwind_frame.c28 return state->regs ? &state->regs->ip : state->bp + 1; in unwind_get_return_address_ptr()
93 return state->bp == last_frame(state); in is_last_frame()
135 return (state->bp == aligned_bp && *(aligned_bp + 1) == *(last_bp + 1)); in is_last_aligned_frame()
155 return (state->bp == last_ftrace_bp && in is_last_ftrace_frame()
156 *state->bp == *(state->bp + 2) && in is_last_ftrace_frame()
157 *(state->bp + 1) == *(state->bp + 4)); in is_last_ftrace_frame()
171 static struct pt_regs *decode_frame_pointer(unsigned long *bp) in decode_frame_pointer() argument
173 unsigned long regs = (unsigned long)bp; in decode_frame_pointer()
181 static struct pt_regs *decode_frame_pointer(unsigned long *bp) in decode_frame_pointer() argument
183 unsigned long regs = (unsigned long)bp; in decode_frame_pointer()
[all …]
Dhw_breakpoint.c94 int arch_install_hw_breakpoint(struct perf_event *bp) in arch_install_hw_breakpoint() argument
96 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_install_hw_breakpoint()
104 *slot = bp; in arch_install_hw_breakpoint()
134 void arch_uninstall_hw_breakpoint(struct perf_event *bp) in arch_uninstall_hw_breakpoint() argument
136 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_uninstall_hw_breakpoint()
143 if (*slot == bp) { in arch_uninstall_hw_breakpoint()
230 static int arch_build_bp_info(struct perf_event *bp, in arch_build_bp_info() argument
314 int hw_breakpoint_arch_parse(struct perf_event *bp, in hw_breakpoint_arch_parse() argument
322 ret = arch_build_bp_info(bp, attr, hw); in hw_breakpoint_arch_parse()
370 struct perf_event *bp; in aout_dump_debugregs() local
[all …]
Dkgdb.c54 { "bp", 4, offsetof(struct pt_regs, bp) },
70 { "bp", 8, offsetof(struct pt_regs, bp) },
153 gdb_regs[GDB_BP] = ((struct inactive_task_frame *)p->thread.sp)->bp; in sleeping_thread_to_gdb_regs()
194 struct perf_event *bp; in kgdb_correct_hw_break() local
208 bp = *per_cpu_ptr(breakinfo[breakno].pev, cpu); in kgdb_correct_hw_break()
209 info = counter_arch_bp(bp); in kgdb_correct_hw_break()
210 if (bp->attr.disabled != 1) in kgdb_correct_hw_break()
212 bp->attr.bp_addr = breakinfo[breakno].addr; in kgdb_correct_hw_break()
213 bp->attr.bp_len = breakinfo[breakno].len; in kgdb_correct_hw_break()
214 bp->attr.bp_type = breakinfo[breakno].type; in kgdb_correct_hw_break()
[all …]
Dptrace.c82 REG_OFFSET_NAME(bp),
475 static void ptrace_triggered(struct perf_event *bp, in ptrace_triggered() argument
487 if (thread->ptrace_bps[i] == bp) in ptrace_triggered()
499 static unsigned long ptrace_get_dr7(struct perf_event *bp[]) in ptrace_get_dr7() argument
506 if (bp[i] && !bp[i]->attr.disabled) { in ptrace_get_dr7()
507 info = counter_arch_bp(bp[i]); in ptrace_get_dr7()
548 static int ptrace_modify_breakpoint(struct perf_event *bp, int len, int type, in ptrace_modify_breakpoint() argument
551 struct perf_event_attr attr = bp->attr; in ptrace_modify_breakpoint()
558 return modify_user_hw_breakpoint(bp, &attr); in ptrace_modify_breakpoint()
579 struct perf_event *bp = thread->ptrace_bps[i]; in ptrace_write_dr7() local
[all …]
/arch/sh/kernel/
Dhw_breakpoint.c47 int arch_install_hw_breakpoint(struct perf_event *bp) in arch_install_hw_breakpoint() argument
49 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_install_hw_breakpoint()
56 *slot = bp; in arch_install_hw_breakpoint()
79 void arch_uninstall_hw_breakpoint(struct perf_event *bp) in arch_uninstall_hw_breakpoint() argument
81 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_uninstall_hw_breakpoint()
87 if (*slot == bp) { in arch_uninstall_hw_breakpoint()
174 static int arch_build_bp_info(struct perf_event *bp, in arch_build_bp_info() argument
219 int hw_breakpoint_arch_parse(struct perf_event *bp, in hw_breakpoint_arch_parse() argument
226 ret = arch_build_bp_info(bp, attr, hw); in hw_breakpoint_arch_parse()
276 struct perf_event *bp; in hw_breakpoint_handler() local
[all …]
Dptrace_32.c63 void ptrace_triggered(struct perf_event *bp, in ptrace_triggered() argument
72 attr = bp->attr; in ptrace_triggered()
74 modify_user_hw_breakpoint(bp, &attr); in ptrace_triggered()
80 struct perf_event *bp; in set_single_step() local
83 bp = thread->ptrace_bps[0]; in set_single_step()
84 if (!bp) { in set_single_step()
91 bp = register_user_hw_breakpoint(&attr, ptrace_triggered, in set_single_step()
93 if (IS_ERR(bp)) in set_single_step()
94 return PTR_ERR(bp); in set_single_step()
96 thread->ptrace_bps[0] = bp; in set_single_step()
[all …]
/arch/sparc/kernel/
Dchmc.c487 static int chmc_bank_match(struct chmc_bank_info *bp, unsigned long phys_addr) in chmc_bank_match() argument
493 if (bp->valid == 0) in chmc_bank_match()
497 upper_bits ^= bp->um; /* What bits are different? */ in chmc_bank_match()
499 upper_bits |= bp->uk; /* What bits don't matter for matching? */ in chmc_bank_match()
506 lower_bits ^= bp->lm; /* What bits are different? */ in chmc_bank_match()
508 lower_bits |= bp->lk; /* What bits don't matter for matching? */ in chmc_bank_match()
527 struct chmc_bank_info *bp; in chmc_find_bank() local
529 bp = &p->logical_banks[bank_no]; in chmc_find_bank()
530 if (chmc_bank_match(bp, phys_addr)) in chmc_find_bank()
531 return bp; in chmc_find_bank()
[all …]
/arch/x86/include/asm/
Dhw_breakpoint.h57 extern int hw_breakpoint_arch_parse(struct perf_event *bp,
64 int arch_install_hw_breakpoint(struct perf_event *bp);
65 void arch_uninstall_hw_breakpoint(struct perf_event *bp);
66 void hw_breakpoint_pmu_read(struct perf_event *bp);
67 void hw_breakpoint_pmu_unthrottle(struct perf_event *bp);
70 arch_fill_perf_breakpoint(struct perf_event *bp);
Dmem_encrypt.h40 void __init sme_encrypt_kernel(struct boot_params *bp);
41 void __init sme_enable(struct boot_params *bp);
69 static inline void __init sme_encrypt_kernel(struct boot_params *bp) { } in sme_encrypt_kernel() argument
70 static inline void __init sme_enable(struct boot_params *bp) { } in sme_enable() argument
/arch/sh/include/asm/
Dhw_breakpoint.h58 extern int hw_breakpoint_arch_parse(struct perf_event *bp,
64 int arch_install_hw_breakpoint(struct perf_event *bp);
65 void arch_uninstall_hw_breakpoint(struct perf_event *bp);
66 void hw_breakpoint_pmu_read(struct perf_event *bp);
68 extern void arch_fill_perf_breakpoint(struct perf_event *bp);
/arch/powerpc/include/asm/
Dhw_breakpoint.h52 extern int hw_breakpoint_arch_parse(struct perf_event *bp,
57 int arch_install_hw_breakpoint(struct perf_event *bp);
58 void arch_uninstall_hw_breakpoint(struct perf_event *bp);
59 void arch_unregister_hw_breakpoint(struct perf_event *bp);
60 void hw_breakpoint_pmu_read(struct perf_event *bp);
64 extern void ptrace_triggered(struct perf_event *bp,
/arch/xtensa/include/asm/
Dhw_breakpoint.h40 int hw_breakpoint_arch_parse(struct perf_event *bp,
46 int arch_install_hw_breakpoint(struct perf_event *bp);
47 void arch_uninstall_hw_breakpoint(struct perf_event *bp);
48 void hw_breakpoint_pmu_read(struct perf_event *bp);
/arch/um/kernel/
Dstacktrace.c21 unsigned long *sp, bp, addr; in dump_trace() local
25 bp = get_frame_pointer(tsk, segv_regs); in dump_trace()
28 frame = (struct stack_frame *)bp; in dump_trace()
33 if ((unsigned long) sp == bp + sizeof(long)) { in dump_trace()
35 bp = (unsigned long)frame; in dump_trace()
/arch/powerpc/xmon/
Dxmon.c116 #define BP_NUM(bp) ((bp) - bpts + 1) argument
456 struct bpt *bp; in xmon_core() local
473 bp = in_breakpoint_table(regs->nip, &offset); in xmon_core()
474 if (bp != NULL) { in xmon_core()
475 regs->nip = bp->address + offset; in xmon_core()
476 atomic_dec(&bp->ref_count); in xmon_core()
513 bp = NULL; in xmon_core()
515 bp = at_breakpoint(regs->nip); in xmon_core()
516 if (bp || unrecoverable_excp(regs)) in xmon_core()
522 if (bp) { in xmon_core()
[all …]
/arch/arm/kernel/
Dhw_breakpoint.c322 int arch_install_hw_breakpoint(struct perf_event *bp) in arch_install_hw_breakpoint() argument
324 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_install_hw_breakpoint()
350 *slot = bp; in arch_install_hw_breakpoint()
379 void arch_uninstall_hw_breakpoint(struct perf_event *bp) in arch_uninstall_hw_breakpoint() argument
381 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in arch_uninstall_hw_breakpoint()
401 if (*slot == bp) { in arch_uninstall_hw_breakpoint()
509 static int arch_build_bp_info(struct perf_event *bp, in arch_build_bp_info() argument
583 int hw_breakpoint_arch_parse(struct perf_event *bp, in hw_breakpoint_arch_parse() argument
595 ret = arch_build_bp_info(bp, attr, hw); in hw_breakpoint_arch_parse()
626 if (is_default_overflow_handler(bp)) { in hw_breakpoint_arch_parse()
[all …]
Dptrace.c377 static void ptrace_hbptriggered(struct perf_event *bp, in ptrace_hbptriggered() argument
381 struct arch_hw_breakpoint *bkpt = counter_arch_bp(bp); in ptrace_hbptriggered()
386 if (current->thread.debug.hbp[i] == bp) in ptrace_hbptriggered()
463 struct perf_event *bp; in ptrace_gethbpregs() local
475 bp = tsk->thread.debug.hbp[idx]; in ptrace_gethbpregs()
476 if (!bp) { in ptrace_gethbpregs()
481 arch_ctrl = counter_arch_bp(bp)->ctrl; in ptrace_gethbpregs()
491 reg = bp->attr.bp_addr; in ptrace_gethbpregs()
509 struct perf_event *bp; in ptrace_sethbpregs() local
531 bp = tsk->thread.debug.hbp[idx]; in ptrace_sethbpregs()
[all …]
/arch/arm64/kernel/
Dhw_breakpoint.c160 static int is_compat_bp(struct perf_event *bp) in is_compat_bp() argument
162 struct task_struct *tsk = bp->hw.target; in is_compat_bp()
189 struct perf_event *bp, in hw_breakpoint_slot_setup() argument
200 *slot = bp; in hw_breakpoint_slot_setup()
205 if (*slot == bp) { in hw_breakpoint_slot_setup()
211 if (*slot == bp) in hw_breakpoint_slot_setup()
222 static int hw_breakpoint_control(struct perf_event *bp, in hw_breakpoint_control() argument
225 struct arch_hw_breakpoint *info = counter_arch_bp(bp); in hw_breakpoint_control()
248 i = hw_breakpoint_slot_setup(slots, max_slots, bp, ops); in hw_breakpoint_control()
288 int arch_install_hw_breakpoint(struct perf_event *bp) in arch_install_hw_breakpoint() argument
[all …]
Dptrace.c170 static void ptrace_hbptriggered(struct perf_event *bp, in ptrace_hbptriggered() argument
174 struct arch_hw_breakpoint *bkpt = counter_arch_bp(bp); in ptrace_hbptriggered()
183 if (current->thread.debug.hbp_break[i] == bp) { in ptrace_hbptriggered()
190 if (current->thread.debug.hbp_watch[i] == bp) { in ptrace_hbptriggered()
238 struct perf_event *bp = ERR_PTR(-EINVAL); in ptrace_hbp_get_event() local
245 bp = tsk->thread.debug.hbp_break[idx]; in ptrace_hbp_get_event()
251 bp = tsk->thread.debug.hbp_watch[idx]; in ptrace_hbp_get_event()
256 return bp; in ptrace_hbp_get_event()
262 struct perf_event *bp) in ptrace_hbp_set_event() argument
271 tsk->thread.debug.hbp_break[idx] = bp; in ptrace_hbp_set_event()
[all …]
/arch/x86/um/asm/
Dprocessor_64.h35 #define current_bp() ({ unsigned long bp; __asm__("movq %%rbp, %0" : "=r" (bp) : ); bp; })
Dprocessor_32.h51 #define current_bp() ({ unsigned long bp; __asm__("movl %%ebp, %0" : "=r" (bp) : ); bp; })
/arch/arm/include/asm/
Dhw_breakpoint.h122 extern int hw_breakpoint_arch_parse(struct perf_event *bp,
132 int arch_install_hw_breakpoint(struct perf_event *bp);
133 void arch_uninstall_hw_breakpoint(struct perf_event *bp);
134 void hw_breakpoint_pmu_read(struct perf_event *bp);

1234