sched: latencytop support
[linux-2.6.git] / include / linux / latencytop.h
1 /*
2  * latencytop.h: Infrastructure for displaying latency
3  *
4  * (C) Copyright 2008 Intel Corporation
5  * Author: Arjan van de Ven <arjan@linux.intel.com>
6  *
7  */
8
9 #ifndef _INCLUDE_GUARD_LATENCYTOP_H_
10 #define _INCLUDE_GUARD_LATENCYTOP_H_
11
12 #ifdef CONFIG_LATENCYTOP
13
14 #define LT_SAVECOUNT            32
15 #define LT_BACKTRACEDEPTH       12
16
17 struct latency_record {
18         unsigned long   backtrace[LT_BACKTRACEDEPTH];
19         unsigned int    count;
20         unsigned long   time;
21         unsigned long   max;
22 };
23
24
25 struct task_struct;
26
27 void account_scheduler_latency(struct task_struct *task, int usecs, int inter);
28
29 void clear_all_latency_tracing(struct task_struct *p);
30
31 #else
32
33 static inline void
34 account_scheduler_latency(struct task_struct *task, int usecs, int inter)
35 {
36 }
37
38 static inline void clear_all_latency_tracing(struct task_struct *p)
39 {
40 }
41
42 #endif
43
44 #endif