mirror of
https://github.com/torvalds/linux.git
synced 2024-11-26 06:02:05 +00:00
task_allocator: Use config switches instead of magic defines
Replace __HAVE_ARCH_TASK_ALLOCATOR and __HAVE_ARCH_THREAD_ALLOCATOR with proper config switches. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Sam Ravnborg <sam@ravnborg.org> Cc: Tony Luck <tony.luck@intel.com> Link: http://lkml.kernel.org/r/20120505150142.371309416@linutronix.de
This commit is contained in:
parent
66bb4cda55
commit
f5e1028736
@ -152,6 +152,14 @@ config GENERIC_SMP_IDLE_THREAD
|
||||
config ARCH_INIT_TASK
|
||||
bool
|
||||
|
||||
# Select if arch has its private alloc_task_struct() function
|
||||
config ARCH_TASK_STRUCT_ALLOCATOR
|
||||
bool
|
||||
|
||||
# Select if arch has its private alloc_thread_info() function
|
||||
config ARCH_THREAD_INFO_ALLOCATOR
|
||||
bool
|
||||
|
||||
config HAVE_REGS_AND_STACK_ACCESS_API
|
||||
bool
|
||||
help
|
||||
|
@ -35,6 +35,8 @@ config IA64
|
||||
select GENERIC_IOMAP
|
||||
select GENERIC_SMP_IDLE_THREAD
|
||||
select ARCH_INIT_TASK
|
||||
select ARCH_TASK_STRUCT_ALLOCATOR
|
||||
select ARCH_THREAD_INFO_ALLOCATOR
|
||||
default y
|
||||
help
|
||||
The Itanium Processor Family is Intel's 64-bit successor to
|
||||
|
@ -54,8 +54,6 @@ struct thread_info {
|
||||
}, \
|
||||
}
|
||||
|
||||
#define __HAVE_ARCH_THREAD_INFO_ALLOCATOR
|
||||
|
||||
#ifndef ASM_OFFSETS_C
|
||||
/* how to get the thread information struct from C */
|
||||
#define current_thread_info() ((struct thread_info *) ((char *) current + IA64_TASK_SIZE))
|
||||
@ -84,7 +82,6 @@ struct thread_info {
|
||||
#endif
|
||||
#define end_of_stack(p) (unsigned long *)((void *)(p) + IA64_RBS_OFFSET)
|
||||
|
||||
#define __HAVE_ARCH_TASK_STRUCT_ALLOCATOR
|
||||
#define alloc_task_struct_node(node) \
|
||||
({ \
|
||||
struct page *page = alloc_pages_node(node, GFP_KERNEL | __GFP_COMP, \
|
||||
|
@ -36,6 +36,7 @@ config SPARC32
|
||||
def_bool !64BIT
|
||||
select GENERIC_ATOMIC64
|
||||
select CLZ_TAB
|
||||
select ARCH_THREAD_INFO_ALLOCATOR
|
||||
|
||||
config SPARC64
|
||||
def_bool 64BIT
|
||||
|
@ -80,8 +80,6 @@ register struct thread_info *current_thread_info_reg asm("g6");
|
||||
*/
|
||||
#define THREAD_INFO_ORDER 1
|
||||
|
||||
#define __HAVE_ARCH_THREAD_INFO_ALLOCATOR
|
||||
|
||||
BTFIXUPDEF_CALL(struct thread_info *, alloc_thread_info_node, int)
|
||||
#define alloc_thread_info_node(tsk, node) BTFIXUP_CALL(alloc_thread_info_node)(node)
|
||||
|
||||
|
@ -111,7 +111,7 @@ int nr_processes(void)
|
||||
return total;
|
||||
}
|
||||
|
||||
#ifndef __HAVE_ARCH_TASK_STRUCT_ALLOCATOR
|
||||
#ifndef CONFIG_ARCH_TASK_STRUCT_ALLOCATOR
|
||||
static struct kmem_cache *task_struct_cachep;
|
||||
|
||||
static inline struct task_struct *alloc_task_struct_node(int node)
|
||||
@ -128,8 +128,7 @@ static inline void free_task_struct(struct task_struct *tsk)
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef __HAVE_ARCH_THREAD_INFO_ALLOCATOR
|
||||
|
||||
#ifndef CONFIG_ARCH_THREAD_INFO_ALLOCATOR
|
||||
void __weak arch_release_thread_info(struct thread_info *ti) { }
|
||||
|
||||
/*
|
||||
@ -243,7 +242,7 @@ void __init __weak arch_task_cache_init(void) { }
|
||||
|
||||
void __init fork_init(unsigned long mempages)
|
||||
{
|
||||
#ifndef __HAVE_ARCH_TASK_STRUCT_ALLOCATOR
|
||||
#ifndef CONFIG_ARCH_TASK_STRUCT_ALLOCATOR
|
||||
#ifndef ARCH_MIN_TASKALIGN
|
||||
#define ARCH_MIN_TASKALIGN L1_CACHE_BYTES
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user