|
@@ -42,6 +42,27 @@ extern struct fs_struct init_fs;
|
|
|
#define INIT_PREV_CPUTIME(x)
|
|
|
#endif
|
|
|
|
|
|
+#ifdef CONFIG_POSIX_TIMERS
|
|
|
+#define INIT_POSIX_TIMERS(s) \
|
|
|
+ .posix_timers = LIST_HEAD_INIT(s.posix_timers),
|
|
|
+#define INIT_CPU_TIMERS(s) \
|
|
|
+ .cpu_timers = { \
|
|
|
+ LIST_HEAD_INIT(s.cpu_timers[0]), \
|
|
|
+ LIST_HEAD_INIT(s.cpu_timers[1]), \
|
|
|
+ LIST_HEAD_INIT(s.cpu_timers[2]), \
|
|
|
+ },
|
|
|
+#define INIT_CPUTIMER(s) \
|
|
|
+ .cputimer = { \
|
|
|
+ .cputime_atomic = INIT_CPUTIME_ATOMIC, \
|
|
|
+ .running = false, \
|
|
|
+ .checking_timer = false, \
|
|
|
+ },
|
|
|
+#else
|
|
|
+#define INIT_POSIX_TIMERS(s)
|
|
|
+#define INIT_CPU_TIMERS(s)
|
|
|
+#define INIT_CPUTIMER(s)
|
|
|
+#endif
|
|
|
+
|
|
|
#define INIT_SIGNALS(sig) { \
|
|
|
.nr_threads = 1, \
|
|
|
.thread_head = LIST_HEAD_INIT(init_task.thread_node), \
|
|
@@ -49,14 +70,10 @@ extern struct fs_struct init_fs;
|
|
|
.shared_pending = { \
|
|
|
.list = LIST_HEAD_INIT(sig.shared_pending.list), \
|
|
|
.signal = {{0}}}, \
|
|
|
- .posix_timers = LIST_HEAD_INIT(sig.posix_timers), \
|
|
|
- .cpu_timers = INIT_CPU_TIMERS(sig.cpu_timers), \
|
|
|
+ INIT_POSIX_TIMERS(sig) \
|
|
|
+ INIT_CPU_TIMERS(sig) \
|
|
|
.rlim = INIT_RLIMITS, \
|
|
|
- .cputimer = { \
|
|
|
- .cputime_atomic = INIT_CPUTIME_ATOMIC, \
|
|
|
- .running = false, \
|
|
|
- .checking_timer = false, \
|
|
|
- }, \
|
|
|
+ INIT_CPUTIMER(sig) \
|
|
|
INIT_PREV_CPUTIME(sig) \
|
|
|
.cred_guard_mutex = \
|
|
|
__MUTEX_INITIALIZER(sig.cred_guard_mutex), \
|
|
@@ -247,7 +264,7 @@ extern struct task_group root_task_group;
|
|
|
.blocked = {{0}}, \
|
|
|
.alloc_lock = __SPIN_LOCK_UNLOCKED(tsk.alloc_lock), \
|
|
|
.journal_info = NULL, \
|
|
|
- .cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \
|
|
|
+ INIT_CPU_TIMERS(tsk) \
|
|
|
.pi_lock = __RAW_SPIN_LOCK_UNLOCKED(tsk.pi_lock), \
|
|
|
.timer_slack_ns = 50000, /* 50 usec default slack */ \
|
|
|
.pids = { \
|
|
@@ -274,13 +291,6 @@ extern struct task_group root_task_group;
|
|
|
}
|
|
|
|
|
|
|
|
|
-#define INIT_CPU_TIMERS(cpu_timers) \
|
|
|
-{ \
|
|
|
- LIST_HEAD_INIT(cpu_timers[0]), \
|
|
|
- LIST_HEAD_INIT(cpu_timers[1]), \
|
|
|
- LIST_HEAD_INIT(cpu_timers[2]), \
|
|
|
-}
|
|
|
-
|
|
|
/* Attach to the init_task data structure for proper alignment */
|
|
|
#define __init_task_data __attribute__((__section__(".data..init_task")))
|
|
|
|