Loading arch/sh/include/asm/processor_32.h +2 −11 Original line number Diff line number Diff line Loading @@ -119,19 +119,10 @@ extern int ubc_usercnt; .sp = sizeof(init_stack) + (long) &init_stack, \ } /* * Do necessary setup to start up a newly executed thread. */ #define start_thread(_regs, new_pc, new_sp) \ set_fs(USER_DS); \ _regs->pr = 0; \ _regs->sr = SR_FD; /* User mode. */ \ _regs->pc = new_pc; \ _regs->regs[15] = new_sp /* Forward declaration, a strange C thing */ struct task_struct; struct mm_struct; extern void start_thread(struct pt_regs *regs, unsigned long new_pc, unsigned long new_sp); /* Free all resources held by a thread. */ extern void release_thread(struct task_struct *); Loading arch/sh/kernel/process_32.c +12 −0 Original line number Diff line number Diff line Loading @@ -147,6 +147,18 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags) } EXPORT_SYMBOL(kernel_thread); void start_thread(struct pt_regs *regs, unsigned long new_pc, unsigned long new_sp) { set_fs(USER_DS); regs->pr = 0; regs->sr = SR_FD; regs->pc = new_pc; regs->regs[15] = new_sp; } EXPORT_SYMBOL(start_thread); /* * Free current thread data structures etc.. */ Loading Loading
arch/sh/include/asm/processor_32.h +2 −11 Original line number Diff line number Diff line Loading @@ -119,19 +119,10 @@ extern int ubc_usercnt; .sp = sizeof(init_stack) + (long) &init_stack, \ } /* * Do necessary setup to start up a newly executed thread. */ #define start_thread(_regs, new_pc, new_sp) \ set_fs(USER_DS); \ _regs->pr = 0; \ _regs->sr = SR_FD; /* User mode. */ \ _regs->pc = new_pc; \ _regs->regs[15] = new_sp /* Forward declaration, a strange C thing */ struct task_struct; struct mm_struct; extern void start_thread(struct pt_regs *regs, unsigned long new_pc, unsigned long new_sp); /* Free all resources held by a thread. */ extern void release_thread(struct task_struct *); Loading
arch/sh/kernel/process_32.c +12 −0 Original line number Diff line number Diff line Loading @@ -147,6 +147,18 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags) } EXPORT_SYMBOL(kernel_thread); void start_thread(struct pt_regs *regs, unsigned long new_pc, unsigned long new_sp) { set_fs(USER_DS); regs->pr = 0; regs->sr = SR_FD; regs->pc = new_pc; regs->regs[15] = new_sp; } EXPORT_SYMBOL(start_thread); /* * Free current thread data structures etc.. */ Loading