MOXA linux-2.6.x / linux-2.6.19-uc1 from UC-7110-LX-BOOTLOADER-1.9_VERSION-4.2.tgz
[linux-2.6.19-moxart.git] / arch / nios2nommu / kernel / init_task.c
blob867e8fbc057210f64675b64de3aed11408d3dac3
1 /*--------------------------------------------------------------------
3 * arch/nios2nommu/kernel/init_task.c
5 * Ported from arch/m68knommu/kernel/init_task.c
7 * Copyright (C) 2003, Microtronix Datacom Ltd.
9 * All rights reserved.
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
16 * This program is distributed in the hope that it will be useful, but
17 * WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE, GOOD TITLE or
19 * NON INFRINGEMENT. See the GNU General Public License for more
20 * details.
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
27 * Jan/20/2004 dgt NiosII
29 ---------------------------------------------------------------------*/
31 #include <linux/mm.h>
32 #include <linux/module.h>
33 #include <linux/sched.h>
34 #include <linux/init.h>
35 #include <linux/init_task.h>
36 #include <linux/fs.h>
37 #include <linux/mqueue.h>
39 #include <asm/uaccess.h>
40 #include <asm/pgtable.h>
42 static struct fs_struct init_fs = INIT_FS;
43 static struct files_struct init_files = INIT_FILES;
44 static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
45 static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
46 struct mm_struct init_mm = INIT_MM(init_mm);
48 EXPORT_SYMBOL(init_mm);
51 * Initial task structure.
53 * All other task structs will be allocated on slabs in fork.c
55 __asm__(".align 2");
56 struct task_struct init_task = INIT_TASK(init_task);
60 * Initial thread structure.
62 * We need to make sure that this is 8192-byte aligned due to the
63 * way process stacks are handled. This is done by having a special
64 * "init_task" linker map entry..
66 union thread_union init_thread_union
67 __attribute__((__section__(".data.init_task"))) =
68 { INIT_THREAD_INFO(init_task) };