Lines Matching refs:thread
75 to->thread.prev_sched = from; in __switch_to()
78 switch_threads(&from->thread.switch_buf, &to->thread.switch_buf); in __switch_to()
81 return current->thread.prev_sched; in __switch_to()
86 struct pt_regs *regs = ¤t->thread.regs; in interrupt_end()
115 if (current->thread.prev_sched != NULL) in new_thread_handler()
116 schedule_tail(current->thread.prev_sched); in new_thread_handler()
117 current->thread.prev_sched = NULL; in new_thread_handler()
119 fn = current->thread.request.thread.proc; in new_thread_handler()
120 arg = current->thread.request.thread.arg; in new_thread_handler()
126 userspace(¤t->thread.regs.regs); in new_thread_handler()
132 schedule_tail(current->thread.prev_sched); in fork_handler()
141 current->thread.prev_sched = NULL; in fork_handler()
143 userspace(¤t->thread.regs.regs); in fork_handler()
154 p->thread = (struct thread_struct) INIT_THREAD; in copy_thread()
157 memcpy(&p->thread.regs.regs, current_pt_regs(), in copy_thread()
158 sizeof(p->thread.regs.regs)); in copy_thread()
159 PT_REGS_SET_SYSCALL_RETURN(&p->thread.regs, 0); in copy_thread()
161 REGS_SP(p->thread.regs.regs.gp) = sp; in copy_thread()
165 arch_copy_thread(¤t->thread.arch, &p->thread.arch); in copy_thread()
167 get_safe_registers(p->thread.regs.regs.gp, p->thread.regs.regs.fp); in copy_thread()
168 p->thread.request.thread.proc = args->fn; in copy_thread()
169 p->thread.request.thread.arg = args->fn_arg; in copy_thread()
173 new_thread(task_stack_page(p), &p->thread.switch_buf, handler); in copy_thread()
289 sp = p->thread.switch_buf->JB_SP; in __get_wchan()