diff options
-rw-r--r-- | include/asm-x86/thread_info.h | 1 | ||||
-rw-r--r-- | kernel/fork.c | 10 |
2 files changed, 8 insertions, 3 deletions
diff --git a/include/asm-x86/thread_info.h b/include/asm-x86/thread_info.h index 407b88c170d3..77244f17993f 100644 --- a/include/asm-x86/thread_info.h +++ b/include/asm-x86/thread_info.h | |||
@@ -9,5 +9,6 @@ | |||
9 | extern void arch_task_cache_init(void); | 9 | extern void arch_task_cache_init(void); |
10 | extern void free_thread_info(struct thread_info *ti); | 10 | extern void free_thread_info(struct thread_info *ti); |
11 | extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src); | 11 | extern int arch_dup_task_struct(struct task_struct *dst, struct task_struct *src); |
12 | #define arch_task_cache_init arch_task_cache_init | ||
12 | #endif | 13 | #endif |
13 | #endif /* _ASM_X86_THREAD_INFO_H */ | 14 | #endif /* _ASM_X86_THREAD_INFO_H */ |
diff --git a/kernel/fork.c b/kernel/fork.c index 44a18192c420..89fe414645e9 100644 --- a/kernel/fork.c +++ b/kernel/fork.c | |||
@@ -132,9 +132,13 @@ void __put_task_struct(struct task_struct *tsk) | |||
132 | free_task(tsk); | 132 | free_task(tsk); |
133 | } | 133 | } |
134 | 134 | ||
135 | void __attribute__((weak)) arch_task_cache_init(void) | 135 | /* |
136 | { | 136 | * macro override instead of weak attribute alias, to workaround |
137 | } | 137 | * gcc 4.1.0 and 4.1.1 bugs with weak attribute and empty functions. |
138 | */ | ||
139 | #ifndef arch_task_cache_init | ||
140 | #define arch_task_cache_init() | ||
141 | #endif | ||
138 | 142 | ||
139 | void __init fork_init(unsigned long mempages) | 143 | void __init fork_init(unsigned long mempages) |
140 | { | 144 | { |