From: Benjamin Herrenschmidt Date: Fri, 18 Apr 2008 06:56:15 +0000 (+1000) Subject: [POWERPC] Add thread_info_cache_init() weak hook X-Git-Tag: v2.6.26-rc1~1055^2~40 X-Git-Url: http://ftp.safe.ca/?p=safe%2Fjmp%2Flinux-2.6;a=commitdiff_plain;h=8c9843e57a7d9d7a090d6467a0f1f3afb8031527 [POWERPC] Add thread_info_cache_init() weak hook Some architectures need to maintain a kmem cache for thread info structures. The next commit adds that to powerpc to fix an alignment problem. There is no good arch callback to use to initialize that cache that I can find, so this adds a new one in the form of a weak function whose default is empty. Signed-off-by: Benjamin Herrenschmidt Acked-by: Andrew Morton Signed-off-by: Paul Mackerras --- diff --git a/include/linux/sched.h b/include/linux/sched.h index 311380e..d0bd970 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h @@ -1926,6 +1926,8 @@ static inline unsigned long *end_of_stack(struct task_struct *p) #endif +extern void thread_info_cache_init(void); + /* set thread flags in other task's structures * - see asm/thread_info.h for TIF_xxxx flags available */ diff --git a/init/main.c b/init/main.c index 833a67d..507c9fb 100644 --- a/init/main.c +++ b/init/main.c @@ -525,6 +525,10 @@ void __init __attribute__((weak)) smp_setup_processor_id(void) { } +void __init __weak thread_info_cache_init(void) +{ +} + asmlinkage void __init start_kernel(void) { char * command_line; @@ -645,6 +649,7 @@ asmlinkage void __init start_kernel(void) if (efi_enabled) efi_enter_virtual_mode(); #endif + thread_info_cache_init(); fork_init(num_physpages); proc_caches_init(); buffer_init();