diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2012-05-03 05:02:58 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2012-05-05 07:00:25 -0400 |
commit | edd813bb35227f19e9d7f808165c0c4e95e03149 (patch) | |
tree | 2c5ebad855fed55e615f9955074f12fce87f1f4b /arch | |
parent | b0ce50aa89edd82aaadc57e8c774f714ede6101d (diff) |
s390: 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: Martin Schwidefsky <schwidefsky@de.ibm.com>
Acked-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Link: http://lkml.kernel.org/r/20120503085035.271439530@linutronix.de
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/Kconfig | 1 | ||||
-rw-r--r-- | arch/s390/Makefile | 1 | ||||
-rw-r--r-- | arch/s390/kernel/Makefile | 2 | ||||
-rw-r--r-- | arch/s390/kernel/init_task.c | 38 |
4 files changed, 2 insertions, 40 deletions
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig index 15cab3ee44e8..6c0eb214ab27 100644 --- a/arch/s390/Kconfig +++ b/arch/s390/Kconfig | |||
@@ -123,6 +123,7 @@ config S390 | |||
123 | select ARCH_INLINE_WRITE_UNLOCK_IRQ | 123 | select ARCH_INLINE_WRITE_UNLOCK_IRQ |
124 | select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE | 124 | select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE |
125 | select GENERIC_SMP_IDLE_THREAD | 125 | select GENERIC_SMP_IDLE_THREAD |
126 | select HAVE_GENERIC_INIT_TASK | ||
126 | 127 | ||
127 | config SCHED_OMIT_FRAME_POINTER | 128 | config SCHED_OMIT_FRAME_POINTER |
128 | def_bool y | 129 | def_bool y |
diff --git a/arch/s390/Makefile b/arch/s390/Makefile index 0ad2f1e1ce9e..49e76e8b477d 100644 --- a/arch/s390/Makefile +++ b/arch/s390/Makefile | |||
@@ -91,7 +91,6 @@ OBJCOPYFLAGS := -O binary | |||
91 | 91 | ||
92 | head-y := arch/s390/kernel/head.o | 92 | head-y := arch/s390/kernel/head.o |
93 | head-y += arch/s390/kernel/$(if $(CONFIG_64BIT),head64.o,head31.o) | 93 | head-y += arch/s390/kernel/$(if $(CONFIG_64BIT),head64.o,head31.o) |
94 | head-y += arch/s390/kernel/init_task.o | ||
95 | 94 | ||
96 | # See arch/s390/Kbuild for content of core part of the kernel | 95 | # See arch/s390/Kbuild for content of core part of the kernel |
97 | core-y += arch/s390/ | 96 | core-y += arch/s390/ |
diff --git a/arch/s390/kernel/Makefile b/arch/s390/kernel/Makefile index 884b18afc864..9733b3f0eb6d 100644 --- a/arch/s390/kernel/Makefile +++ b/arch/s390/kernel/Makefile | |||
@@ -28,7 +28,7 @@ obj-y := bitmap.o traps.o time.o process.o base.o early.o setup.o vtime.o \ | |||
28 | obj-y += $(if $(CONFIG_64BIT),entry64.o,entry.o) | 28 | obj-y += $(if $(CONFIG_64BIT),entry64.o,entry.o) |
29 | obj-y += $(if $(CONFIG_64BIT),reipl64.o,reipl.o) | 29 | obj-y += $(if $(CONFIG_64BIT),reipl64.o,reipl.o) |
30 | 30 | ||
31 | extra-y += head.o init_task.o vmlinux.lds | 31 | extra-y += head.o vmlinux.lds |
32 | extra-y += $(if $(CONFIG_64BIT),head64.o,head31.o) | 32 | extra-y += $(if $(CONFIG_64BIT),head64.o,head31.o) |
33 | 33 | ||
34 | obj-$(CONFIG_MODULES) += s390_ksyms.o module.o | 34 | obj-$(CONFIG_MODULES) += s390_ksyms.o module.o |
diff --git a/arch/s390/kernel/init_task.c b/arch/s390/kernel/init_task.c deleted file mode 100644 index 4d1c9fb0b540..000000000000 --- a/arch/s390/kernel/init_task.c +++ /dev/null | |||
@@ -1,38 +0,0 @@ | |||
1 | /* | ||
2 | * arch/s390/kernel/init_task.c | ||
3 | * | ||
4 | * S390 version | ||
5 | * | ||
6 | * Derived from "arch/i386/kernel/init_task.c" | ||
7 | */ | ||
8 | |||
9 | #include <linux/mm.h> | ||
10 | #include <linux/fs.h> | ||
11 | #include <linux/module.h> | ||
12 | #include <linux/sched.h> | ||
13 | #include <linux/init_task.h> | ||
14 | #include <linux/mqueue.h> | ||
15 | |||
16 | #include <asm/uaccess.h> | ||
17 | #include <asm/pgtable.h> | ||
18 | |||
19 | static struct signal_struct init_signals = INIT_SIGNALS(init_signals); | ||
20 | static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); | ||
21 | /* | ||
22 | * Initial thread structure. | ||
23 | * | ||
24 | * We need to make sure that this is THREAD_SIZE aligned due to the | ||
25 | * way process stacks are handled. This is done by having a special | ||
26 | * "init_task" linker map entry.. | ||
27 | */ | ||
28 | union thread_union init_thread_union __init_task_data = | ||
29 | { INIT_THREAD_INFO(init_task) }; | ||
30 | |||
31 | /* | ||
32 | * Initial task structure. | ||
33 | * | ||
34 | * All other task structs will be allocated on slabs in fork.c | ||
35 | */ | ||
36 | struct task_struct init_task = INIT_TASK(init_task); | ||
37 | |||
38 | EXPORT_SYMBOL(init_task); | ||