/arch/microblaze/kernel/ |
D | unwind.c | 77 static unsigned long *find_frame_creation(unsigned long *pc) in find_frame_creation() argument 86 for (i = 0; i < 1000; i++, pc--) { in find_frame_creation() 90 if (!kernel_text_address((unsigned long) pc)) in find_frame_creation() 93 instr = *pc; in find_frame_creation() 102 frame_size, pc); in find_frame_creation() 106 pr_debug(" Found frame creation at 0x%p, size %d\n", pc, in find_frame_creation() 108 return pc; in find_frame_creation() 125 static int lookup_prev_stack_frame(unsigned long fp, unsigned long pc, in lookup_prev_stack_frame() argument 133 if (pc != (unsigned long) &_switch_to) in lookup_prev_stack_frame() 134 prologue = find_frame_creation((unsigned long *)pc); in lookup_prev_stack_frame() [all …]
|
/arch/csky/kernel/ |
D | stacktrace.c | 19 unsigned long fp, sp, pc; in walk_stackframe() local 24 pc = instruction_pointer(regs); in walk_stackframe() 30 pc = (unsigned long)walk_stackframe; in walk_stackframe() 35 pc = thread_saved_lr(task); in walk_stackframe() 42 if (unlikely(!__kernel_text_address(pc) || fn(pc, arg))) in walk_stackframe() 54 pc = ftrace_graph_ret_addr(current, NULL, frame->ra, in walk_stackframe() 64 unsigned long sp, pc; in walk_stackframe() local 69 pc = instruction_pointer(regs); in walk_stackframe() 73 pc = (unsigned long)walk_stackframe; in walk_stackframe() 77 pc = thread_saved_lr(task); in walk_stackframe() [all …]
|
/arch/riscv/kernel/ |
D | stacktrace.c | 24 unsigned long fp, sp, pc; in walk_stackframe() local 30 pc = instruction_pointer(regs); in walk_stackframe() 34 pc = (unsigned long)walk_stackframe; in walk_stackframe() 40 pc = task->thread.ra; in walk_stackframe() 47 if (unlikely(!__kernel_text_address(pc) || (level++ >= 0 && !fn(arg, pc)))) in walk_stackframe() 58 if (regs && (regs->epc == pc) && (frame->fp & 0x7)) { in walk_stackframe() 60 pc = regs->ra; in walk_stackframe() 63 pc = ftrace_graph_ret_addr(current, NULL, frame->ra, in walk_stackframe() 75 unsigned long sp, pc; in walk_stackframe() local 80 pc = instruction_pointer(regs); in walk_stackframe() [all …]
|
/arch/arm64/kernel/ |
D | ftrace.c | 25 static int ftrace_modify_code(unsigned long pc, u32 old, u32 new, in ftrace_modify_code() argument 39 if (aarch64_insn_read((void *)pc, &replaced)) in ftrace_modify_code() 45 if (aarch64_insn_patch_text_nosync((void *)pc, new)) in ftrace_modify_code() 56 unsigned long pc; in ftrace_update_ftrace_func() local 59 pc = (unsigned long)function_nocfi(ftrace_call); in ftrace_update_ftrace_func() 60 new = aarch64_insn_gen_branch_imm(pc, (unsigned long)func, in ftrace_update_ftrace_func() 63 return ftrace_modify_code(pc, 0, new, false); in ftrace_update_ftrace_func() 93 unsigned long pc = rec->ip; in ftrace_find_callable_addr() local 94 long offset = (long)*addr - (long)pc; in ftrace_find_callable_addr() 123 mod = __module_text_address(pc); in ftrace_find_callable_addr() [all …]
|
D | stacktrace.c | 37 unsigned long pc) in start_backtrace() argument 40 frame->pc = pc; in start_backtrace() 114 frame->pc = READ_ONCE_NOCHECK(*(unsigned long *)(fp + 8)); in unwind_frame() 120 (ptrauth_strip_insn_pac(frame->pc) == (unsigned long)return_to_handler)) { in unwind_frame() 131 frame->pc = ret_stack->ret; in unwind_frame() 135 frame->pc = ptrauth_strip_insn_pac(frame->pc); in unwind_frame() 147 if (!fn(data, frame->pc)) in walk_stackframe() 198 dump_backtrace_entry(frame.pc, loglvl); in dump_backtrace() 208 dump_backtrace_entry(regs->pc, loglvl); in dump_backtrace() 231 start_backtrace(&frame, regs->regs[29], regs->pc); in arch_stack_walk()
|
D | time.c | 39 if (!in_lock_functions(regs->pc)) in profile_pc() 40 return regs->pc; in profile_pc() 42 start_backtrace(&frame, regs->regs[29], regs->pc); in profile_pc() 48 } while (in_lock_functions(frame.pc)); in profile_pc() 50 return frame.pc; in profile_pc()
|
/arch/xtensa/kernel/ |
D | stacktrace.c | 34 unsigned long pc = regs->pc; in xtensa_backtrace_user() local 41 frame.pc = pc; in xtensa_backtrace_user() 44 if (pc == 0 || pc >= TASK_SIZE || ufn(&frame, data)) in xtensa_backtrace_user() 72 pc = MAKE_PC_FROM_RA(a0, pc); in xtensa_backtrace_user() 79 frame.pc = pc; in xtensa_backtrace_user() 82 if (pc == 0 || pc >= TASK_SIZE || ufn(&frame, data)) in xtensa_backtrace_user() 96 pc = MAKE_PC_FROM_RA(a0, pc); in xtensa_backtrace_user() 106 frame.pc = pc; in xtensa_backtrace_user() 109 if (pc == 0 || pc >= TASK_SIZE || ufn(&frame, data)) in xtensa_backtrace_user() 120 unsigned long pc = regs->depc > VALID_DOUBLE_EXCEPTION_ADDRESS ? in xtensa_backtrace_kernel() local [all …]
|
/arch/arm64/include/asm/ |
D | preempt.h | 15 static inline void preempt_count_set(u64 pc) in preempt_count_set() argument 18 WRITE_ONCE(current_thread_info()->preempt.count, pc); in preempt_count_set() 46 u32 pc = READ_ONCE(current_thread_info()->preempt.count); in __preempt_count_add() local 47 pc += val; in __preempt_count_add() 48 WRITE_ONCE(current_thread_info()->preempt.count, pc); in __preempt_count_add() 53 u32 pc = READ_ONCE(current_thread_info()->preempt.count); in __preempt_count_sub() local 54 pc -= val; in __preempt_count_sub() 55 WRITE_ONCE(current_thread_info()->preempt.count, pc); in __preempt_count_sub() 61 u64 pc = READ_ONCE(ti->preempt_count); in __preempt_count_dec_and_test() local 64 WRITE_ONCE(ti->preempt.count, --pc); in __preempt_count_dec_and_test() [all …]
|
/arch/sparc/kernel/ |
D | traps_32.c | 35 static void instruction_dump(unsigned long *pc) in instruction_dump() argument 39 if((((unsigned long) pc) & 3)) in instruction_dump() 43 printk("%c%08lx%c",i?' ':'<',pc[i],i?' ':'>'); in instruction_dump() 88 instruction_dump ((unsigned long *) regs->pc); in die_if_kernel() 104 (void __user *)regs->pc, type - 0x80); in do_hw_interrupt() 107 void do_illegal_instruction(struct pt_regs *regs, unsigned long pc, unsigned long npc, in do_illegal_instruction() argument 114 regs->pc, *(unsigned long *)regs->pc); in do_illegal_instruction() 117 send_sig_fault(SIGILL, ILL_ILLOPC, (void __user *)pc, current); in do_illegal_instruction() 120 void do_priv_instruction(struct pt_regs *regs, unsigned long pc, unsigned long npc, in do_priv_instruction() argument 125 send_sig_fault(SIGILL, ILL_PRVOPC, (void __user *)pc, current); in do_priv_instruction() [all …]
|
D | stacktrace.c | 37 unsigned long pc; in __save_stack_trace() local 48 pc = regs->tpc; in __save_stack_trace() 51 pc = sf->callers_pc; in __save_stack_trace() 57 else if (!skip_sched || !in_sched_functions(pc)) { in __save_stack_trace() 58 trace->entries[trace->nr_entries++] = pc; in __save_stack_trace() 60 if ((pc + 8UL) == (unsigned long) &return_to_handler) { in __save_stack_trace() 65 pc = ret_stack->ret; in __save_stack_trace() 68 trace->entries[trace->nr_entries++] = pc; in __save_stack_trace()
|
/arch/nds32/kernel/ |
D | ftrace.c | 128 static int __ftrace_modify_code(unsigned long pc, unsigned long *old_insn, in __ftrace_modify_code() argument 134 if (copy_from_kernel_nofault(orig_insn, (void *)pc, in __ftrace_modify_code() 141 if (copy_to_kernel_nofault((void *)pc, new_insn, MCOUNT_INSN_SIZE)) in __ftrace_modify_code() 147 static int ftrace_modify_code(unsigned long pc, unsigned long *old_insn, in ftrace_modify_code() argument 152 ret = __ftrace_modify_code(pc, old_insn, new_insn, validate); in ftrace_modify_code() 156 flush_icache_range(pc, pc + MCOUNT_INSN_SIZE); in ftrace_modify_code() 163 unsigned long pc = (unsigned long)&ftrace_call; in ftrace_update_ftrace_func() local 170 return ftrace_modify_code(pc, old_insn, new_insn, false); in ftrace_update_ftrace_func() 175 unsigned long pc = rec->ip; in ftrace_make_call() local 181 return ftrace_modify_code(pc, nop_insn, call_insn, true); in ftrace_make_call() [all …]
|
/arch/sh/kernel/ |
D | traps_32.c | 223 srcu = (unsigned char __user *)regs->pc; in handle_unaligned_ins() 240 srcu = (unsigned char __user *)(regs->pc & ~0x3); in handle_unaligned_ins() 270 void __user *addr = (void __user *)(regs->pc + in handle_delayslot() 338 regs->pc = regs->pr; in handle_unaligned_access() 344 regs->pc += rm + 4; in handle_unaligned_access() 350 regs->pr = regs->pc + 4; in handle_unaligned_access() 351 regs->pc += rm + 4; in handle_unaligned_access() 371 regs->pc = rm; in handle_unaligned_access() 377 regs->pr = regs->pc + 4; in handle_unaligned_access() 378 regs->pc = rm; in handle_unaligned_access() [all …]
|
D | kgdb.c | 49 insn_size_t op = __raw_readw(linux_regs->pc); in get_step_address() 55 addr = linux_regs->pc + 4 + OPCODE_BTF_DISP(op); in get_step_address() 57 addr = linux_regs->pc + 2; in get_step_address() 63 addr = linux_regs->pc + 4 + OPCODE_BTF_DISP(op); in get_step_address() 65 addr = linux_regs->pc + 4; /* Not in delay slot */ in get_step_address() 71 addr = linux_regs->pc + 4 + OPCODE_BTF_DISP(op); in get_step_address() 73 addr = linux_regs->pc + 2; in get_step_address() 79 addr = linux_regs->pc + 4 + OPCODE_BTF_DISP(op); in get_step_address() 81 addr = linux_regs->pc + 4; /* Not in delay slot */ in get_step_address() 86 addr = linux_regs->pc + 4 + OPCODE_BRA_DISP(op); in get_step_address() [all …]
|
/arch/mips/kvm/ |
D | trace.h | 34 __field(unsigned long, pc) 38 __entry->pc = vcpu->arch.pc; 42 __entry->pc) 119 __field(unsigned long, pc) 124 __entry->pc = vcpu->arch.pc; 131 __entry->pc) 257 __field(unsigned long, pc) 263 __entry->pc = vcpu->arch.pc; 273 __entry->pc) 281 __field(unsigned long, pc) [all …]
|
/arch/arm/kernel/ |
D | ftrace.c | 71 static unsigned long ftrace_call_replace(unsigned long pc, unsigned long addr, in ftrace_call_replace() argument 74 return arm_gen_branch_link(pc, addr, warn); in ftrace_call_replace() 77 static int ftrace_modify_code(unsigned long pc, unsigned long old, in ftrace_modify_code() argument 88 if (copy_from_kernel_nofault(&replaced, (void *)pc, in ftrace_modify_code() 96 __patch_text((void *)pc, new); in ftrace_modify_code() 103 unsigned long pc; in ftrace_update_ftrace_func() local 107 pc = (unsigned long)&ftrace_call; in ftrace_update_ftrace_func() 108 new = ftrace_call_replace(pc, (unsigned long)func, true); in ftrace_update_ftrace_func() 110 ret = ftrace_modify_code(pc, 0, new, false); in ftrace_update_ftrace_func() 114 pc = (unsigned long)&ftrace_regs_call; in ftrace_update_ftrace_func() [all …]
|
D | insn.c | 6 static unsigned long __arm_gen_branch_thumb2(unsigned long pc, in __arm_gen_branch_thumb2() argument 14 offset = (long)addr - (long)(pc + 4); in __arm_gen_branch_thumb2() 37 static unsigned long __arm_gen_branch_arm(unsigned long pc, unsigned long addr, in __arm_gen_branch_arm() argument 46 offset = (long)addr - (long)(pc + 8); in __arm_gen_branch_arm() 58 __arm_gen_branch(unsigned long pc, unsigned long addr, bool link, bool warn) in __arm_gen_branch() argument 61 return __arm_gen_branch_thumb2(pc, addr, link, warn); in __arm_gen_branch() 63 return __arm_gen_branch_arm(pc, addr, link, warn); in __arm_gen_branch()
|
/arch/h8300/kernel/ |
D | ptrace_h.c | 164 char *fetch_p, unsigned short *pc, in decode() argument 173 return (unsigned short *)pc + op->length; in decode() 175 addr = *(unsigned long *)pc; in decode() 178 addr = *pc & 0xff; in decode() 191 regno = (*pc >> 4) & 0x07; in decode() 199 pc = (unsigned short *)((unsigned long)pc + in decode() 201 return pc+1; /* skip myself */ in decode() 204 pc = (unsigned short *)((unsigned long)pc + in decode() 205 ((signed short)(*(pc+1)))); in decode() 206 return pc+2; /* skip myself */ in decode() [all …]
|
D | kgdb.c | 26 { "pc", GDB_SIZEOF_REG, offsetof(struct pt_regs, pc) }, 81 regs->pc &= 0x00ffffff; in h8300_kgdb_trap() 84 if (*(u16 *)(regs->pc) == *(u16 *)&arch_kgdb_ops.gdb_bpt_instr) in h8300_kgdb_trap() 85 regs->pc += BREAK_INSTR_SIZE; in h8300_kgdb_trap() 86 regs->pc |= regs->ccr << 24; in h8300_kgdb_trap() 96 void kgdb_arch_set_pc(struct pt_regs *regs, unsigned long pc) in kgdb_arch_set_pc() argument 98 regs->pc = pc; in kgdb_arch_set_pc() 114 regs->pc = addr; in kgdb_arch_handle_exception()
|
/arch/arm/include/asm/ |
D | insn.h | 16 __arm_gen_branch(unsigned long pc, unsigned long addr, bool link, bool warn); 19 arm_gen_branch(unsigned long pc, unsigned long addr) in arm_gen_branch() argument 21 return __arm_gen_branch(pc, addr, false, true); in arm_gen_branch() 25 arm_gen_branch_link(unsigned long pc, unsigned long addr, bool warn) in arm_gen_branch_link() argument 27 return __arm_gen_branch(pc, addr, true, warn); in arm_gen_branch_link()
|
/arch/alpha/kernel/ |
D | traps.c | 69 regs->pc, regs->r26, regs->ps, print_tainted()); in dik_show_regs() 70 printk("pc is at %pSR\n", (void *)regs->pc); in dik_show_regs() 109 dik_show_code(unsigned int *pc) in dik_show_code() argument 116 if (__get_user(insn, (unsigned int __user *)pc + i)) in dik_show_code() 188 dik_show_code((unsigned int *)regs->pc); in die_if_kernel() 203 long (*alpha_fp_emul) (unsigned long pc) 208 long alpha_fp_emul (unsigned long pc); 222 si_code = alpha_fp_emul(regs->pc - 4); in do_entArith() 230 send_sig_fault_trapno(SIGFPE, si_code, (void __user *) regs->pc, 0, current); in do_entArith() 255 = (const unsigned int *) regs->pc; in do_entIF() [all …]
|
/arch/openrisc/kernel/ |
D | traps.c | 71 smp_processor_id(), regs->pc, regs->sr, regs->sp); in show_registers() 103 if (regs->pc < PAGE_OFFSET) in show_registers() 108 if (__get_user(c, &((unsigned char *)regs->pc)[i])) { in show_registers() 133 0, regs->pc, regs->sr, regs->sp); in nommu_dump_state() 189 c = ((unsigned char *)(__pa(regs->pc)))[i]; in nommu_dump_state() 236 force_sig_fault(SIGTRAP, TRAP_BRKPT, (void __user *)regs->pc); in do_trap() 270 insn = *((unsigned int *)regs->pc); in in_delay_slot() 295 jmp = *((unsigned int *)regs->pc); in adjust_pc() 303 regs->pc += displacement; in adjust_pc() 306 regs->pc += displacement; in adjust_pc() [all …]
|
/arch/mips/kernel/ |
D | perf_event.c | 48 unsigned long pc = regs->cp0_epc; in perf_callchain_kernel() local 50 if (raw_show_trace || !__kernel_text_address(pc)) { in perf_callchain_kernel() 59 perf_callchain_store(entry, pc); in perf_callchain_kernel() 62 pc = unwind_stack(current, &sp, pc, &ra); in perf_callchain_kernel() 63 } while (pc); in perf_callchain_kernel()
|
/arch/m68k/ifpsp060/src/ |
D | ftest.S | 72 pea pass_str(%pc) 81 pea fail_str(%pc) 93 pea start_str(%pc) 99 pea effadd_str(%pc) 109 pea unsupp_str(%pc) 119 pea ovfl_nm_str(%pc) 127 pea unfl_nm_str(%pc) 145 pea start_str_unimp(%pc) 151 pea unimp_str(%pc) 171 pea start_str_enable(%pc) [all …]
|
/arch/arm/mach-rpc/ |
D | ecard-loader.S | 25 mov lr, pc 26 mov pc, r2 27 ldmfd sp!, {r4 - r12, pc} 37 mov lr, pc 38 add pc, r1, #8 39 ldmfd sp!, {r4 - r12, pc}
|
/arch/m68k/kernel/ |
D | head.S | 512 pea %pc@(.Lstr\@) 524 #define is_not_amiga(lab) cmpl &MACH_AMIGA,%pc@(m68k_machtype); jne lab 525 #define is_not_atari(lab) cmpl &MACH_ATARI,%pc@(m68k_machtype); jne lab 526 #define is_not_mac(lab) cmpl &MACH_MAC,%pc@(m68k_machtype); jne lab 527 #define is_not_mvme147(lab) cmpl &MACH_MVME147,%pc@(m68k_machtype); jne lab 528 #define is_not_mvme16x(lab) cmpl &MACH_MVME16x,%pc@(m68k_machtype); jne lab 529 #define is_not_bvme6000(lab) cmpl &MACH_BVME6000,%pc@(m68k_machtype); jne lab 530 #define is_mvme147(lab) cmpl &MACH_MVME147,%pc@(m68k_machtype); jeq lab 531 #define is_mvme16x(lab) cmpl &MACH_MVME16x,%pc@(m68k_machtype); jeq lab 532 #define is_bvme6000(lab) cmpl &MACH_BVME6000,%pc@(m68k_machtype); jeq lab [all …]
|