diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2012-05-03 05:02:59 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2012-05-05 07:00:25 -0400 |
commit | 41fe22f6553d1384fbef20b195b8c61ed6e768a1 (patch) | |
tree | 703202f745843e4b0a7943952ef8f8a7f6d45def | |
parent | 842d7b1ccaefb6668cad193dcc894959ad756f3f (diff) |
sh: 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>
Acked-by: Paul Mundt <lethal@linux-sh.org>
Link: http://lkml.kernel.org/r/20120503085035.398257169@linutronix.de
-rw-r--r-- | arch/sh/Kconfig | 1 | ||||
-rw-r--r-- | arch/sh/Makefile | 2 | ||||
-rw-r--r-- | arch/sh/kernel/Makefile | 2 | ||||
-rw-r--r-- | arch/sh/kernel/init_task.c | 30 |
4 files changed, 3 insertions, 32 deletions
diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig index 244cfd0dbb7b..a0cd70be8656 100644 --- a/arch/sh/Kconfig +++ b/arch/sh/Kconfig | |||
@@ -29,6 +29,7 @@ config SUPERH | |||
29 | select GENERIC_ATOMIC64 | 29 | select GENERIC_ATOMIC64 |
30 | select GENERIC_IRQ_SHOW | 30 | select GENERIC_IRQ_SHOW |
31 | select GENERIC_SMP_IDLE_THREAD | 31 | select GENERIC_SMP_IDLE_THREAD |
32 | select HAVE_GENERIC_INIT_TASK | ||
32 | help | 33 | help |
33 | The SuperH is a RISC processor targeted for use in embedded systems | 34 | The SuperH is a RISC processor targeted for use in embedded systems |
34 | and consumer electronics; it was also used in the Sega Dreamcast | 35 | and consumer electronics; it was also used in the Sega Dreamcast |
diff --git a/arch/sh/Makefile b/arch/sh/Makefile index 3fc0f413777c..e14a676a0c7d 100644 --- a/arch/sh/Makefile +++ b/arch/sh/Makefile | |||
@@ -124,7 +124,7 @@ endif | |||
124 | 124 | ||
125 | export ld-bfd BITS | 125 | export ld-bfd BITS |
126 | 126 | ||
127 | head-y := arch/sh/kernel/init_task.o arch/sh/kernel/head_$(BITS).o | 127 | head-y := arch/sh/kernel/head_$(BITS).o |
128 | 128 | ||
129 | core-y += arch/sh/kernel/ arch/sh/mm/ arch/sh/boards/ | 129 | core-y += arch/sh/kernel/ arch/sh/mm/ arch/sh/boards/ |
130 | core-$(CONFIG_SH_FPU_EMU) += arch/sh/math-emu/ | 130 | core-$(CONFIG_SH_FPU_EMU) += arch/sh/math-emu/ |
diff --git a/arch/sh/kernel/Makefile b/arch/sh/kernel/Makefile index 77f7ae1d4647..88571ff8eeec 100644 --- a/arch/sh/kernel/Makefile +++ b/arch/sh/kernel/Makefile | |||
@@ -2,7 +2,7 @@ | |||
2 | # Makefile for the Linux/SuperH kernel. | 2 | # Makefile for the Linux/SuperH kernel. |
3 | # | 3 | # |
4 | 4 | ||
5 | extra-y := head_$(BITS).o init_task.o vmlinux.lds | 5 | extra-y := head_$(BITS).o vmlinux.lds |
6 | 6 | ||
7 | ifdef CONFIG_FUNCTION_TRACER | 7 | ifdef CONFIG_FUNCTION_TRACER |
8 | # Do not profile debug and lowlevel utilities | 8 | # Do not profile debug and lowlevel utilities |
diff --git a/arch/sh/kernel/init_task.c b/arch/sh/kernel/init_task.c deleted file mode 100644 index 11f2ea556a6b..000000000000 --- a/arch/sh/kernel/init_task.c +++ /dev/null | |||
@@ -1,30 +0,0 @@ | |||
1 | #include <linux/mm.h> | ||
2 | #include <linux/module.h> | ||
3 | #include <linux/sched.h> | ||
4 | #include <linux/init_task.h> | ||
5 | #include <linux/mqueue.h> | ||
6 | #include <linux/fs.h> | ||
7 | #include <asm/uaccess.h> | ||
8 | #include <asm/pgtable.h> | ||
9 | |||
10 | static struct signal_struct init_signals = INIT_SIGNALS(init_signals); | ||
11 | static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); | ||
12 | struct pt_regs fake_swapper_regs; | ||
13 | /* | ||
14 | * Initial thread structure. | ||
15 | * | ||
16 | * We need to make sure that this is 8192-byte aligned due to the | ||
17 | * way process stacks are handled. This is done by having a special | ||
18 | * "init_task" linker map entry.. | ||
19 | */ | ||
20 | union thread_union init_thread_union __init_task_data = | ||
21 | { INIT_THREAD_INFO(init_task) }; | ||
22 | |||
23 | /* | ||
24 | * Initial task structure. | ||
25 | * | ||
26 | * All other task structs will be allocated on slabs in fork.c | ||
27 | */ | ||
28 | struct task_struct init_task = INIT_TASK(init_task); | ||
29 | |||
30 | EXPORT_SYMBOL(init_task); | ||