Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

openrisc: 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: Jonas Bonn <jonas@southpole.se>
Link: http://lkml.kernel.org/r/20120503085035.083343435@linutronix.de

+3 -44
+1
arch/openrisc/Kconfig
··· 17 17 select GENERIC_IOMAP 18 18 select GENERIC_CPU_DEVICES 19 19 select GENERIC_ATOMIC64 20 + select HAVE_GENERIC_INIT_TASK 20 21 21 22 config MMU 22 23 def_bool y
+1 -1
arch/openrisc/Makefile
··· 38 38 KBUILD_CFLAGS += $(call cc-option,-msoft-div) 39 39 endif 40 40 41 - head-y := arch/openrisc/kernel/head.o arch/openrisc/kernel/init_task.o 41 + head-y := arch/openrisc/kernel/head.o 42 42 43 43 core-y += arch/openrisc/lib/ \ 44 44 arch/openrisc/kernel/ \
+1 -1
arch/openrisc/kernel/Makefile
··· 2 2 # Makefile for the linux kernel. 3 3 # 4 4 5 - extra-y := head.o vmlinux.lds init_task.o 5 + extra-y := head.o vmlinux.lds 6 6 7 7 obj-y := setup.o idle.o or32_ksyms.o process.o dma.o \ 8 8 traps.o time.o irq.o entry.o ptrace.o signal.o sys_or32.o \
-42
arch/openrisc/kernel/init_task.c
··· 1 - /* 2 - * OpenRISC init_task.c 3 - * 4 - * Linux architectural port borrowing liberally from similar works of 5 - * others. All original copyrights apply as per the original source 6 - * declaration. 7 - * 8 - * Modifications for the OpenRISC architecture: 9 - * Copyright (C) 2003 Matjaz Breskvar <phoenix@bsemi.com> 10 - * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se> 11 - * 12 - * This program is free software; you can redistribute it and/or 13 - * modify it under the terms of the GNU General Public License 14 - * as published by the Free Software Foundation; either version 15 - * 2 of the License, or (at your option) any later version. 16 - */ 17 - 18 - #include <linux/init_task.h> 19 - #include <linux/mqueue.h> 20 - #include <linux/export.h> 21 - 22 - static struct signal_struct init_signals = INIT_SIGNALS(init_signals); 23 - static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); 24 - 25 - /* 26 - * Initial thread structure. 27 - * 28 - * We need to make sure that this is THREAD_SIZE aligned due to the 29 - * way process stacks are handled. This is done by having a special 30 - * "init_task" linker map entry.. 31 - */ 32 - union thread_union init_thread_union __init_task_data = { 33 - INIT_THREAD_INFO(init_task) 34 - }; 35 - 36 - /* 37 - * Initial task structure. 38 - * 39 - * All other task structs will be allocated on slabs in fork.c 40 - */ 41 - struct task_struct init_task = INIT_TASK(init_task); 42 - EXPORT_SYMBOL(init_task);