diff options
author | Chris Zankel <chris@zankel.net> | 2007-08-04 09:27:30 -0700 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2007-08-27 13:53:12 -0700 |
commit | 73089cbfdf0c69e061a4fa90d614679e630c6727 (patch) | |
tree | 7d824a51511a5ae7bf9fe3242ddc6b102db7ea38 /arch | |
parent | b2444d34a0e727a80fee4b725bc5ecb9d0f206f0 (diff) | |
download | kernel_goldelico_gta04-73089cbfdf0c69e061a4fa90d614679e630c6727.zip kernel_goldelico_gta04-73089cbfdf0c69e061a4fa90d614679e630c6727.tar.gz kernel_goldelico_gta04-73089cbfdf0c69e061a4fa90d614679e630c6727.tar.bz2 |
[XTENSA] Move pre-initialized structures to init_task.c
Move all initialization structures for the initial task to it's own file.
Signed-off-by: Chris Zankel <chris@zankel.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/xtensa/kernel/Makefile | 2 | ||||
-rw-r--r-- | arch/xtensa/kernel/init_task.c | 38 | ||||
-rw-r--r-- | arch/xtensa/kernel/process.c | 15 |
3 files changed, 40 insertions, 15 deletions
diff --git a/arch/xtensa/kernel/Makefile b/arch/xtensa/kernel/Makefile index 71f733c..0e3ac68 100644 --- a/arch/xtensa/kernel/Makefile +++ b/arch/xtensa/kernel/Makefile @@ -7,7 +7,7 @@ extra-y := head.o vmlinux.lds obj-y := align.o entry.o irq.o coprocessor.o process.o ptrace.o semaphore.o \ setup.o signal.o syscall.o time.o traps.o vectors.o platform.o \ - pci-dma.o + pci-dma.o init_task.o ## windowspill.o diff --git a/arch/xtensa/kernel/init_task.c b/arch/xtensa/kernel/init_task.c new file mode 100644 index 0000000..021b4f4 --- /dev/null +++ b/arch/xtensa/kernel/init_task.c @@ -0,0 +1,38 @@ +/* + * arch/xtensa/kernel/init_task.c + * + * Xtensa Processor version. + * + * This file is subject to the terms and conditions of the GNU General Public + * License. See the file "COPYING" in the main directory of this archive + * for more details. + * + * Copyright (C) 2007 Tensilica Inc. + * + * Chris Zankel <chris@zankel.net> + */ + +#include <linux/mm.h> +#include <linux/fs.h> +#include <linux/init.h> +#include <linux/init_task.h> +#include <linux/module.h> +#include <linux/mqueue.h> + +#include <asm/uaccess.h> + +static struct fs_struct init_fs = INIT_FS; +static struct files_struct init_files = INIT_FILES; +static struct signal_struct init_signals = INIT_SIGNALS(init_signals); +static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); +struct mm_struct init_mm = INIT_MM(init_mm); + +EXPORT_SYMBOL(init_mm); + +union thread_union init_thread_union + __attribute__((__section__(".data.init_task"))) = +{ INIT_THREAD_INFO(init_task) }; + +struct task_struct init_task = INIT_TASK(init_task); + +EXPORT_SYMBOL(init_task); diff --git a/arch/xtensa/kernel/process.c b/arch/xtensa/kernel/process.c index ce758ba..f53d7bd 100644 --- a/arch/xtensa/kernel/process.c +++ b/arch/xtensa/kernel/process.c @@ -30,6 +30,7 @@ #include <linux/init_task.h> #include <linux/module.h> #include <linux/mqueue.h> +#include <linux/fs.h> #include <asm/pgtable.h> #include <asm/uaccess.h> @@ -45,20 +46,6 @@ extern void ret_from_fork(void); -static struct fs_struct init_fs = INIT_FS; -static struct files_struct init_files = INIT_FILES; -static struct signal_struct init_signals = INIT_SIGNALS(init_signals); -static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); -struct mm_struct init_mm = INIT_MM(init_mm); -EXPORT_SYMBOL(init_mm); - -union thread_union init_thread_union - __attribute__((__section__(".data.init_task"))) = -{ INIT_THREAD_INFO(init_task) }; - -struct task_struct init_task = INIT_TASK(init_task); -EXPORT_SYMBOL(init_task); - struct task_struct *current_set[NR_CPUS] = {&init_task, }; void (*pm_power_off)(void) = NULL; |