0001
0002 #ifndef _LINUX__INIT_TASK_H
0003 #define _LINUX__INIT_TASK_H
0004
0005 #include <linux/rcupdate.h>
0006 #include <linux/irqflags.h>
0007 #include <linux/utsname.h>
0008 #include <linux/lockdep.h>
0009 #include <linux/ftrace.h>
0010 #include <linux/ipc.h>
0011 #include <linux/pid_namespace.h>
0012 #include <linux/user_namespace.h>
0013 #include <linux/securebits.h>
0014 #include <linux/seqlock.h>
0015 #include <linux/rbtree.h>
0016 #include <linux/refcount.h>
0017 #include <linux/sched/autogroup.h>
0018 #include <net/net_namespace.h>
0019 #include <linux/sched/rt.h>
0020 #include <linux/livepatch.h>
0021 #include <linux/mm_types.h>
0022
0023 #include <asm/thread_info.h>
0024
0025 extern struct files_struct init_files;
0026 extern struct fs_struct init_fs;
0027 extern struct nsproxy init_nsproxy;
0028 extern struct cred init_cred;
0029
0030 #ifndef CONFIG_VIRT_CPU_ACCOUNTING_NATIVE
0031 #define INIT_PREV_CPUTIME(x) .prev_cputime = { \
0032 .lock = __RAW_SPIN_LOCK_UNLOCKED(x.prev_cputime.lock), \
0033 },
0034 #else
0035 #define INIT_PREV_CPUTIME(x)
0036 #endif
0037
0038 #define INIT_TASK_COMM "swapper"
0039
0040
0041 #ifdef CONFIG_ARCH_TASK_STRUCT_ON_STACK
0042 #define __init_task_data __section(".data..init_task")
0043 #else
0044 #define __init_task_data
0045 #endif
0046
0047
0048 #define __init_thread_info __section(".data..init_thread_info")
0049
0050 #endif