1 /* SPDX-License-Identifier: GPL-2.0 */
3 * task_io_accounting: a structure which is used for recording a single task's
6 * Don't include this header file directly - it is designed to be dragged in via
9 * Blame Andrew Morton for all this.
12 struct task_io_accounting {
13 #ifdef CONFIG_TASK_XACCT
18 /* # of read syscalls */
20 /* # of write syscalls */
22 #endif /* CONFIG_TASK_XACCT */
24 #ifdef CONFIG_TASK_IO_ACCOUNTING
26 * The number of bytes which this task has caused to be read from
32 * The number of bytes which this task has caused, or shall cause to be
38 * A task can cause "negative" IO too. If this task truncates some
39 * dirty pagecache, some IO which another task has been accounted for
40 * (in its write_bytes) will not be happening. We _could_ just
41 * subtract that from the truncating task's write_bytes, but there is
42 * information loss in doing that.
44 u64 cancelled_write_bytes;
45 #endif /* CONFIG_TASK_IO_ACCOUNTING */