diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2012-05-03 05:03:00 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2012-05-05 07:00:26 -0400 |
commit | d0b691dffaee89a4c9e1890694d0c77201d7a9b1 (patch) | |
tree | 20e4d25d0d25bccb1d77fd998aedb79e2b6e0070 | |
parent | 293ef7b8288da79112276ddd53902aff75ce7494 (diff) |
unicore32: Use generic init_task
Same code. Use the generic version. The special Makefile treatment is
pointless anyway as init_task.o contains only data which is handled by
the linker script. So no point on being treated like head text.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
Link: http://lkml.kernel.org/r/20120503085035.669622065@linutronix.de
-rw-r--r-- | arch/unicore32/Kconfig | 1 | ||||
-rw-r--r-- | arch/unicore32/Makefile | 1 | ||||
-rw-r--r-- | arch/unicore32/kernel/Makefile | 2 | ||||
-rw-r--r-- | arch/unicore32/kernel/init_task.c | 44 |
4 files changed, 2 insertions, 46 deletions
diff --git a/arch/unicore32/Kconfig b/arch/unicore32/Kconfig index eeb8054c7cd8..e24ca398120e 100644 --- a/arch/unicore32/Kconfig +++ b/arch/unicore32/Kconfig | |||
@@ -13,6 +13,7 @@ config UNICORE32 | |||
13 | select GENERIC_IRQ_SHOW | 13 | select GENERIC_IRQ_SHOW |
14 | select ARCH_WANT_FRAME_POINTERS | 14 | select ARCH_WANT_FRAME_POINTERS |
15 | select GENERIC_IOMAP | 15 | select GENERIC_IOMAP |
16 | select HAVE_GENERIC_INIT_TASK | ||
16 | help | 17 | help |
17 | UniCore-32 is 32-bit Instruction Set Architecture, | 18 | UniCore-32 is 32-bit Instruction Set Architecture, |
18 | including a series of low-power-consumption RISC chip | 19 | including a series of low-power-consumption RISC chip |
diff --git a/arch/unicore32/Makefile b/arch/unicore32/Makefile index 6af4bc415f2b..b6f5c4c1eaf9 100644 --- a/arch/unicore32/Makefile +++ b/arch/unicore32/Makefile | |||
@@ -33,7 +33,6 @@ endif | |||
33 | CHECKFLAGS += -D__unicore32__ | 33 | CHECKFLAGS += -D__unicore32__ |
34 | 34 | ||
35 | head-y := arch/unicore32/kernel/head.o | 35 | head-y := arch/unicore32/kernel/head.o |
36 | head-y += arch/unicore32/kernel/init_task.o | ||
37 | 36 | ||
38 | core-y += arch/unicore32/kernel/ | 37 | core-y += arch/unicore32/kernel/ |
39 | core-y += arch/unicore32/mm/ | 38 | core-y += arch/unicore32/mm/ |
diff --git a/arch/unicore32/kernel/Makefile b/arch/unicore32/kernel/Makefile index aeb0f181568e..324010156958 100644 --- a/arch/unicore32/kernel/Makefile +++ b/arch/unicore32/kernel/Makefile | |||
@@ -29,4 +29,4 @@ obj-$(CONFIG_PUV3_NB0916) += puv3-nb0916.o | |||
29 | head-y := head.o | 29 | head-y := head.o |
30 | obj-$(CONFIG_DEBUG_LL) += debug.o | 30 | obj-$(CONFIG_DEBUG_LL) += debug.o |
31 | 31 | ||
32 | extra-y := $(head-y) init_task.o vmlinux.lds | 32 | extra-y := $(head-y) vmlinux.lds |
diff --git a/arch/unicore32/kernel/init_task.c b/arch/unicore32/kernel/init_task.c deleted file mode 100644 index a35a1e50e4f4..000000000000 --- a/arch/unicore32/kernel/init_task.c +++ /dev/null | |||
@@ -1,44 +0,0 @@ | |||
1 | /* | ||
2 | * linux/arch/unicore32/kernel/init_task.c | ||
3 | * | ||
4 | * Code specific to PKUnity SoC and UniCore ISA | ||
5 | * | ||
6 | * Copyright (C) 2001-2010 GUAN Xue-tao | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | */ | ||
12 | #include <linux/mm.h> | ||
13 | #include <linux/module.h> | ||
14 | #include <linux/fs.h> | ||
15 | #include <linux/sched.h> | ||
16 | #include <linux/init.h> | ||
17 | #include <linux/init_task.h> | ||
18 | #include <linux/mqueue.h> | ||
19 | #include <linux/uaccess.h> | ||
20 | |||
21 | #include <asm/pgtable.h> | ||
22 | |||
23 | static struct signal_struct init_signals = INIT_SIGNALS(init_signals); | ||
24 | static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); | ||
25 | /* | ||
26 | * Initial thread structure. | ||
27 | * | ||
28 | * We need to make sure that this is 8192-byte aligned due to the | ||
29 | * way process stacks are handled. This is done by making sure | ||
30 | * the linker maps this in the .text segment right after head.S, | ||
31 | * and making head.S ensure the proper alignment. | ||
32 | * | ||
33 | * The things we do for performance.. | ||
34 | */ | ||
35 | union thread_union init_thread_union __init_task_data = { | ||
36 | INIT_THREAD_INFO(init_task) }; | ||
37 | |||
38 | /* | ||
39 | * Initial task structure. | ||
40 | * | ||
41 | * All other task structs will be allocated on slabs in fork.c | ||
42 | */ | ||
43 | struct task_struct init_task = INIT_TASK(init_task); | ||
44 | EXPORT_SYMBOL(init_task); | ||