Loading arch/csky/Kconfig +1 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ config CSKY select GX6605S_TIMER if CPU_CK610 select HAVE_ARCH_TRACEHOOK select HAVE_ARCH_AUDITSYSCALL select HAVE_COPY_THREAD_TLS select HAVE_DYNAMIC_FTRACE select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_GRAPH_TRACER Loading arch/csky/kernel/process.c +4 −3 Original line number Diff line number Diff line Loading @@ -40,10 +40,11 @@ unsigned long thread_saved_pc(struct task_struct *tsk) return sw->r15; } int copy_thread(unsigned long clone_flags, int copy_thread_tls(unsigned long clone_flags, unsigned long usp, unsigned long kthread_arg, struct task_struct *p) struct task_struct *p, unsigned long tls) { struct switch_stack *childstack; struct pt_regs *childregs = task_pt_regs(p); Loading @@ -70,7 +71,7 @@ int copy_thread(unsigned long clone_flags, childregs->usp = usp; if (clone_flags & CLONE_SETTLS) task_thread_info(p)->tp_value = childregs->tls = childregs->regs[0]; = tls; childregs->a0 = 0; childstack->r15 = (unsigned long) ret_from_fork; Loading Loading
arch/csky/Kconfig +1 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ config CSKY select GX6605S_TIMER if CPU_CK610 select HAVE_ARCH_TRACEHOOK select HAVE_ARCH_AUDITSYSCALL select HAVE_COPY_THREAD_TLS select HAVE_DYNAMIC_FTRACE select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_GRAPH_TRACER Loading
arch/csky/kernel/process.c +4 −3 Original line number Diff line number Diff line Loading @@ -40,10 +40,11 @@ unsigned long thread_saved_pc(struct task_struct *tsk) return sw->r15; } int copy_thread(unsigned long clone_flags, int copy_thread_tls(unsigned long clone_flags, unsigned long usp, unsigned long kthread_arg, struct task_struct *p) struct task_struct *p, unsigned long tls) { struct switch_stack *childstack; struct pt_regs *childregs = task_pt_regs(p); Loading @@ -70,7 +71,7 @@ int copy_thread(unsigned long clone_flags, childregs->usp = usp; if (clone_flags & CLONE_SETTLS) task_thread_info(p)->tp_value = childregs->tls = childregs->regs[0]; = tls; childregs->a0 = 0; childstack->r15 = (unsigned long) ret_from_fork; Loading