aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/init_task.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/init_task.h')
-rw-r--r--include/linux/init_task.h29
1 files changed, 18 insertions, 11 deletions
diff --git a/include/linux/init_task.h b/include/linux/init_task.h
index 0d2e6070a7d9..cae32eda3ac3 100644
--- a/include/linux/init_task.h
+++ b/include/linux/init_task.h
@@ -27,7 +27,7 @@ extern struct fs_struct init_fs;
27 .cputimer = { \ 27 .cputimer = { \
28 .cputime = INIT_CPUTIME, \ 28 .cputime = INIT_CPUTIME, \
29 .running = 0, \ 29 .running = 0, \
30 .lock = __ATOMIC_SPIN_LOCK_UNLOCKED(sig.cputimer.lock), \ 30 .lock = __RAW_SPIN_LOCK_UNLOCKED(sig.cputimer.lock), \
31 }, \ 31 }, \
32} 32}
33 33
@@ -83,26 +83,32 @@ extern struct group_info init_groups;
83#define INIT_IDS 83#define INIT_IDS
84#endif 84#endif
85 85
86#ifdef CONFIG_SECURITY_FILE_CAPABILITIES
87/* 86/*
88 * Because of the reduced scope of CAP_SETPCAP when filesystem 87 * Because of the reduced scope of CAP_SETPCAP when filesystem
89 * capabilities are in effect, it is safe to allow CAP_SETPCAP to 88 * capabilities are in effect, it is safe to allow CAP_SETPCAP to
90 * be available in the default configuration. 89 * be available in the default configuration.
91 */ 90 */
92# define CAP_INIT_BSET CAP_FULL_SET 91# define CAP_INIT_BSET CAP_FULL_SET
92
93#ifdef CONFIG_TREE_PREEMPT_RCU
94#define INIT_TASK_RCU_PREEMPT(tsk) \
95 .rcu_read_lock_nesting = 0, \
96 .rcu_read_unlock_special = 0, \
97 .rcu_blocked_node = NULL, \
98 .rcu_node_entry = LIST_HEAD_INIT(tsk.rcu_node_entry),
93#else 99#else
94# define CAP_INIT_BSET CAP_INIT_EFF_SET 100#define INIT_TASK_RCU_PREEMPT(tsk)
95#endif 101#endif
96 102
97extern struct cred init_cred; 103extern struct cred init_cred;
98 104
99#ifdef CONFIG_PERF_COUNTERS 105#ifdef CONFIG_PERF_EVENTS
100# define INIT_PERF_COUNTERS(tsk) \ 106# define INIT_PERF_EVENTS(tsk) \
101 .perf_counter_mutex = \ 107 .perf_event_mutex = \
102 __MUTEX_INITIALIZER(tsk.perf_counter_mutex), \ 108 __MUTEX_INITIALIZER(tsk.perf_event_mutex), \
103 .perf_counter_list = LIST_HEAD_INIT(tsk.perf_counter_list), 109 .perf_event_list = LIST_HEAD_INIT(tsk.perf_event_list),
104#else 110#else
105# define INIT_PERF_COUNTERS(tsk) 111# define INIT_PERF_EVENTS(tsk)
106#endif 112#endif
107 113
108/* 114/*
@@ -159,7 +165,7 @@ extern struct cred init_cred;
159 .journal_info = NULL, \ 165 .journal_info = NULL, \
160 .cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \ 166 .cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \
161 .fs_excl = ATOMIC_INIT(0), \ 167 .fs_excl = ATOMIC_INIT(0), \
162 .pi_lock = __ATOMIC_SPIN_LOCK_UNLOCKED(tsk.pi_lock), \ 168 .pi_lock = __RAW_SPIN_LOCK_UNLOCKED(tsk.pi_lock), \
163 .timer_slack_ns = 50000, /* 50 usec default slack */ \ 169 .timer_slack_ns = 50000, /* 50 usec default slack */ \
164 .posix_timer_list = NULL, \ 170 .posix_timer_list = NULL, \
165 .pids = { \ 171 .pids = { \
@@ -169,11 +175,12 @@ extern struct cred init_cred;
169 }, \ 175 }, \
170 .dirties = INIT_PROP_LOCAL_SINGLE(dirties), \ 176 .dirties = INIT_PROP_LOCAL_SINGLE(dirties), \
171 INIT_IDS \ 177 INIT_IDS \
172 INIT_PERF_COUNTERS(tsk) \ 178 INIT_PERF_EVENTS(tsk) \
173 INIT_TRACE_IRQFLAGS \ 179 INIT_TRACE_IRQFLAGS \
174 INIT_LOCKDEP \ 180 INIT_LOCKDEP \
175 INIT_FTRACE_GRAPH \ 181 INIT_FTRACE_GRAPH \
176 INIT_TRACE_RECURSION \ 182 INIT_TRACE_RECURSION \
183 INIT_TASK_RCU_PREEMPT(tsk) \
177} 184}
178 185
179 186