Lines Matching refs:pc
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()
65 if (pc == (unsigned long)ret_from_exception) { in walk_stackframe()
66 if (unlikely(!__kernel_text_address(pc) || !fn(arg, pc))) in walk_stackframe()
69 pc = ((struct pt_regs *)sp)->epc; in walk_stackframe()
82 unsigned long sp, pc; in walk_stackframe() local
87 pc = instruction_pointer(regs); in walk_stackframe()
90 pc = (unsigned long)walk_stackframe; in walk_stackframe()
94 pc = task->thread.ra; in walk_stackframe()
102 if (__kernel_text_address(pc) && unlikely(!fn(arg, pc))) in walk_stackframe()
104 pc = READ_ONCE_NOCHECK(*ksp++) - 0x4; in walk_stackframe()
110 static bool print_trace_address(void *arg, unsigned long pc) in print_trace_address() argument
114 print_ip_sym(loglvl, pc); in print_trace_address()
130 static bool save_wchan(void *arg, unsigned long pc) in save_wchan() argument
132 if (!in_sched_functions(pc)) { in save_wchan()
134 *p = pc; in save_wchan()
142 unsigned long pc = 0; in __get_wchan() local
146 walk_stackframe(task, NULL, save_wchan, &pc); in __get_wchan()
148 return pc; in __get_wchan()