aboutsummaryrefslogtreecommitdiff
path: root/include/linux/init_task.h
diff options
context:
space:
mode:
authorJohn Stultz <johnstul@us.ibm.com>2009-07-03 08:29:58 -0500
committerAnders Roxell <anders.roxell@linaro.org>2014-06-30 14:36:56 +0200
commit2eaaee38b98ae953cd93c5d04577cc88e3120895 (patch)
tree69e85bfdecbb700f7246a27682e592e45b2db3ab /include/linux/init_task.h
parentf409d00536d6063e80f5642059fff7afbe163448 (diff)
posix-timers: thread posix-cpu-timers on -rt
posix-cpu-timer code takes non -rt safe locks in hard irq context. Move it to a thread. [ 3.0 fixes from Peter Zijlstra <peterz@infradead.org> ] Signed-off-by: John Stultz <johnstul@us.ibm.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Anders Roxell <anders.roxell@linaro.org>
Diffstat (limited to 'include/linux/init_task.h')
-rw-r--r--include/linux/init_task.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/init_task.h b/include/linux/init_task.h
index 163bf2d24ac7..e96a35963d0f 100644
--- a/include/linux/init_task.h
+++ b/include/linux/init_task.h
@@ -145,6 +145,12 @@ extern struct task_group root_task_group;
# define INIT_PERF_EVENTS(tsk)
#endif
+#ifdef CONFIG_PREEMPT_RT_BASE
+# define INIT_TIMER_LIST .posix_timer_list = NULL,
+#else
+# define INIT_TIMER_LIST
+#endif
+
#ifdef CONFIG_VIRT_CPU_ACCOUNTING_GEN
# define INIT_VTIME(tsk) \
.vtime_lock = __RAW_SPIN_LOCK_UNLOCKED(tsk.vtime_lock), \
@@ -218,6 +224,7 @@ extern struct task_group root_task_group;
.cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \
.pi_lock = __RAW_SPIN_LOCK_UNLOCKED(tsk.pi_lock), \
.timer_slack_ns = 50000, /* 50 usec default slack */ \
+ INIT_TIMER_LIST \
.pids = { \
[PIDTYPE_PID] = INIT_PID_LINK(PIDTYPE_PID), \
[PIDTYPE_PGID] = INIT_PID_LINK(PIDTYPE_PGID), \