To: linus, akpm Cc: lkml Subject: [PATCH] Thread stack abstractions From: Roman Zippel Thread stack abstractions: - thread_info becomes thread_stack Signed-off-by: Roman Zippel --- include/asm-m68k/thread_info.h | 8 ++++---- kernel/fork.c | 10 +++++----- 2 files changed, 9 insertions(+), 9 deletions(-) --- a/include/asm-m68k/thread_info.h +++ b/include/asm-m68k/thread_info.h @@ -26,11 +26,11 @@ struct thread_info { /* THREAD_SIZE should be 8k, so handle differently for 4k and 8k machines */ #if PAGE_SHIFT == 13 /* 8k machines */ -#define alloc_thread_info(tsk) ((struct thread_info *)__get_free_pages(GFP_KERNEL,0)) -#define free_thread_info(ti) free_pages((unsigned long)(ti),0) +#define alloc_thread_stack(tsk) ((void *)__get_free_pages(GFP_KERNEL,0)) +#define free_thread_stack(ti) free_pages((unsigned long)(ti),0) #else /* otherwise assume 4k pages */ -#define alloc_thread_info(tsk) ((struct thread_info *)__get_free_pages(GFP_KERNEL,1)) -#define free_thread_info(ti) free_pages((unsigned long)(ti),1) +#define alloc_thread_stack(tsk) ((void *)__get_free_pages(GFP_KERNEL,1)) +#define free_thread_stack(ti) free_pages((unsigned long)(ti),1) #endif /* PAGE_SHIFT == 13 */ #define init_thread_info (init_task.thread.info) --- a/kernel/fork.c +++ b/kernel/fork.c @@ -107,7 +107,7 @@ static struct kmem_cache *mm_cachep; void free_task(struct task_struct *tsk) { - free_thread_info(tsk->stack); + free_thread_stack(tsk->stack); rt_mutex_debug_task_free(tsk); free_task_struct(tsk); } @@ -162,7 +162,7 @@ void __init fork_init(unsigned long memp static struct task_struct *dup_task_struct(struct task_struct *orig) { struct task_struct *tsk; - struct thread_info *ti; + void *stack; prepare_to_copy(orig); @@ -170,14 +170,14 @@ static struct task_struct *dup_task_stru if (!tsk) return NULL; - ti = alloc_thread_info(tsk); - if (!ti) { + stack = alloc_thread_stack(tsk); + if (!stack) { free_task_struct(tsk); return NULL; } *tsk = *orig; - tsk->stack = ti; + tsk->stack = stack; setup_thread_stack(tsk, orig); #ifdef CONFIG_CC_STACKPROTECTOR