PageRenderTime 5ms CodeModel.GetById 2ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 0ms

/include/linux/task_io_accounting.h

https://github.com/airy09/android_kernel_sony_apq8064
C Header | 45 lines | 13 code | 4 blank | 28 comment | 0 complexity | 977916d754c3447c6a9c05d4816c4ad9 MD5 | raw file
 1/*
 2 * task_io_accounting: a structure which is used for recording a single task's
 3 * IO statistics.
 4 *
 5 * Don't include this header file directly - it is designed to be dragged in via
 6 * sched.h.
 7 *
 8 * Blame Andrew Morton for all this.
 9 */
10
11struct task_io_accounting {
12#ifdef CONFIG_TASK_XACCT
13	/* bytes read */
14	u64 rchar;
15	/*  bytes written */
16	u64 wchar;
17	/* # of read syscalls */
18	u64 syscr;
19	/* # of write syscalls */
20	u64 syscw;
21#endif /* CONFIG_TASK_XACCT */
22
23#ifdef CONFIG_TASK_IO_ACCOUNTING
24	/*
25	 * The number of bytes which this task has caused to be read from
26	 * storage.
27	 */
28	u64 read_bytes;
29
30	/*
31	 * The number of bytes which this task has caused, or shall cause to be
32	 * written to disk.
33	 */
34	u64 write_bytes;
35
36	/*
37	 * A task can cause "negative" IO too.  If this task truncates some
38	 * dirty pagecache, some IO which another task has been accounted for
39	 * (in its write_bytes) will not be happening.  We _could_ just
40	 * subtract that from the truncating task's write_bytes, but there is
41	 * information loss in doing that.
42	 */
43	u64 cancelled_write_bytes;
44#endif /* CONFIG_TASK_IO_ACCOUNTING */
45};