]> git.proxmox.com Git - mirror_ubuntu-kernels.git/blobdiff - include/linux/sched.h
tracing/function-return-tracer: store return stack into task_struct and allocate...
[mirror_ubuntu-kernels.git] / include / linux / sched.h
index 295b7c756ca6107aee29ee4c12e3eb2f486c9f7e..bee1e93c95ad9945adb072893e1fb69b33c77778 100644 (file)
@@ -247,6 +247,7 @@ extern void init_idle(struct task_struct *idle, int cpu);
 extern void init_idle_bootup_task(struct task_struct *idle);
 
 extern int runqueue_is_locked(void);
+extern void task_rq_unlock_wait(struct task_struct *p);
 
 extern cpumask_t nohz_cpu_mask;
 #if defined(CONFIG_SMP) && defined(CONFIG_NO_HZ)
@@ -1351,6 +1352,17 @@ struct task_struct {
        unsigned long default_timer_slack_ns;
 
        struct list_head        *scm_work_list;
+#ifdef CONFIG_FUNCTION_RET_TRACER
+       /* Index of current stored adress in ret_stack */
+       int curr_ret_stack;
+       /* Stack of return addresses for return function tracing */
+       struct ftrace_ret_stack *ret_stack;
+       /*
+        * Number of functions that haven't been traced
+        * because of depth overrun.
+        */
+       atomic_t trace_overrun;
+#endif
 };
 
 /*