Lines Matching refs:frame

42 int notrace unwind_frame(struct stackframe *frame)  in unwind_frame()  argument
45 unsigned long fp = frame->fp; in unwind_frame()
48 low = frame->sp; in unwind_frame()
56 frame->sp = frame->fp; in unwind_frame()
57 frame->fp = *(unsigned long *)(fp); in unwind_frame()
58 frame->pc = *(unsigned long *)(fp + 4); in unwind_frame()
65 frame->fp = *(unsigned long *)(fp - 12); in unwind_frame()
66 frame->sp = *(unsigned long *)(fp - 8); in unwind_frame()
67 frame->pc = *(unsigned long *)(fp - 4); in unwind_frame()
70 if (is_kretprobe_trampoline(frame->pc)) in unwind_frame()
71 frame->pc = kretprobe_find_ret_addr(frame->tsk, in unwind_frame()
72 (void *)frame->fp, &frame->kr_cur); in unwind_frame()
79 void notrace walk_stackframe(struct stackframe *frame, in walk_stackframe() argument
85 if (fn(frame, data)) in walk_stackframe()
87 ret = unwind_frame(frame); in walk_stackframe()
101 static int save_trace(struct stackframe *frame, void *d) in save_trace() argument
106 unsigned long addr = frame->pc; in save_trace()
120 if (!in_entry_text(frame->pc)) in save_trace()
123 regs = (struct pt_regs *)frame->sp; in save_trace()
124 if ((unsigned long)&regs[1] > ALIGN(frame->sp, THREAD_SIZE)) in save_trace()
137 struct stackframe frame; in __save_stack_trace() local
152 frame.fp = thread_saved_fp(tsk); in __save_stack_trace()
153 frame.sp = thread_saved_sp(tsk); in __save_stack_trace()
154 frame.lr = 0; /* recovered from the stack */ in __save_stack_trace()
155 frame.pc = thread_saved_pc(tsk); in __save_stack_trace()
160 frame.fp = (unsigned long)__builtin_frame_address(0); in __save_stack_trace()
161 frame.sp = current_stack_pointer; in __save_stack_trace()
162 frame.lr = (unsigned long)__builtin_return_address(0); in __save_stack_trace()
163 frame.pc = (unsigned long)__save_stack_trace; in __save_stack_trace()
166 frame.kr_cur = NULL; in __save_stack_trace()
167 frame.tsk = tsk; in __save_stack_trace()
170 walk_stackframe(&frame, save_trace, &data); in __save_stack_trace()
176 struct stackframe frame; in save_stack_trace_regs() local
182 frame.fp = regs->ARM_fp; in save_stack_trace_regs()
183 frame.sp = regs->ARM_sp; in save_stack_trace_regs()
184 frame.lr = regs->ARM_lr; in save_stack_trace_regs()
185 frame.pc = regs->ARM_pc; in save_stack_trace_regs()
187 frame.kr_cur = NULL; in save_stack_trace_regs()
188 frame.tsk = current; in save_stack_trace_regs()
191 walk_stackframe(&frame, save_trace, &data); in save_stack_trace_regs()