'stk_sz' is a misnomer: it is never used for a stack size. Rather, it is an argument which is passed to the main function executed by a kernel thread, when forking a new kthread. The most appropriate name is 'kthread_arg'.
Signed-off-by: Alex Dowad <alexinbeij...@gmail.com> --- arch/arm/kernel/process.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/arch/arm/kernel/process.c b/arch/arm/kernel/process.c index fdfa3a7..4183ebd 100644 --- a/arch/arm/kernel/process.c +++ b/arch/arm/kernel/process.c @@ -342,9 +342,12 @@ void release_thread(struct task_struct *dead_task) asmlinkage void ret_from_fork(void) __asm__("ret_from_fork"); +/* + * Copy architecture-specific thread state + */ int copy_thread(unsigned long clone_flags, unsigned long stack_start, - unsigned long stk_sz, struct task_struct *p) + unsigned long kthread_arg, struct task_struct *p) { struct thread_info *thread = task_thread_info(p); struct pt_regs *childregs = task_pt_regs(p); @@ -352,13 +355,15 @@ copy_thread(unsigned long clone_flags, unsigned long stack_start, memset(&thread->cpu_context, 0, sizeof(struct cpu_context_save)); if (likely(!(p->flags & PF_KTHREAD))) { + /* user thread */ *childregs = *current_pt_regs(); childregs->ARM_r0 = 0; if (stack_start) childregs->ARM_sp = stack_start; } else { + /* kernel thread */ memset(childregs, 0, sizeof(struct pt_regs)); - thread->cpu_context.r4 = stk_sz; + thread->cpu_context.r4 = kthread_arg; thread->cpu_context.r5 = stack_start; childregs->ARM_cpsr = SVC_MODE; } -- 2.0.0.GIT -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/