sh: Use generic init_task
authorThomas Gleixner <tglx@linutronix.de>
Thu, 3 May 2012 09:02:59 +0000 (09:02 +0000)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 5 May 2012 11:00:25 +0000 (13:00 +0200)
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
arch/sh/Kconfig
arch/sh/Makefile
arch/sh/kernel/Makefile
arch/sh/kernel/init_task.c [deleted file]

index 244cfd0..a0cd70b 100644 (file)
@@ -29,6 +29,7 @@ config SUPERH
        select GENERIC_ATOMIC64
        select GENERIC_IRQ_SHOW
        select GENERIC_SMP_IDLE_THREAD
+       select HAVE_GENERIC_INIT_TASK
        help
          The SuperH is a RISC processor targeted for use in embedded systems
          and consumer electronics; it was also used in the Sega Dreamcast
index 3fc0f41..e14a676 100644 (file)
@@ -124,7 +124,7 @@ endif
 
 export ld-bfd BITS
 
-head-y := arch/sh/kernel/init_task.o arch/sh/kernel/head_$(BITS).o
+head-y := arch/sh/kernel/head_$(BITS).o
 
 core-y                         += arch/sh/kernel/ arch/sh/mm/ arch/sh/boards/
 core-$(CONFIG_SH_FPU_EMU)      += arch/sh/math-emu/
index 77f7ae1..88571ff 100644 (file)
@@ -2,7 +2,7 @@
 # Makefile for the Linux/SuperH kernel.
 #
 
-extra-y        := head_$(BITS).o init_task.o vmlinux.lds
+extra-y        := head_$(BITS).o vmlinux.lds
 
 ifdef CONFIG_FUNCTION_TRACER
 # 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 (file)
index 11f2ea5..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-#include <linux/mm.h>
-#include <linux/module.h>
-#include <linux/sched.h>
-#include <linux/init_task.h>
-#include <linux/mqueue.h>
-#include <linux/fs.h>
-#include <asm/uaccess.h>
-#include <asm/pgtable.h>
-
-static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
-static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
-struct pt_regs fake_swapper_regs;
-/*
- * Initial thread structure.
- *
- * We need to make sure that this is 8192-byte aligned due to the
- * way process stacks are handled. This is done by having a special
- * "init_task" linker map entry..
- */
-union thread_union init_thread_union __init_task_data =
-       { INIT_THREAD_INFO(init_task) };
-
-/*
- * Initial task structure.
- *
- * All other task structs will be allocated on slabs in fork.c
- */
-struct task_struct init_task = INIT_TASK(init_task);
-
-EXPORT_SYMBOL(init_task);