mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
46 lines
1.1 KiB
46 lines
1.1 KiB
/* SPDX-License-Identifier: GPL-2.0 */ |
|
/* |
|
* task_io_accounting: a structure which is used for recording a single task's |
|
* IO statistics. |
|
* |
|
* Don't include this header file directly - it is designed to be dragged in via |
|
* sched.h. |
|
* |
|
* Blame Andrew Morton for all this. |
|
*/ |
|
|
|
struct task_io_accounting { |
|
#ifdef CONFIG_TASK_XACCT |
|
/* bytes read */ |
|
u64 rchar; |
|
/* bytes written */ |
|
u64 wchar; |
|
/* # of read syscalls */ |
|
u64 syscr; |
|
/* # of write syscalls */ |
|
u64 syscw; |
|
#endif /* CONFIG_TASK_XACCT */ |
|
|
|
#ifdef CONFIG_TASK_IO_ACCOUNTING |
|
/* |
|
* The number of bytes which this task has caused to be read from |
|
* storage. |
|
*/ |
|
u64 read_bytes; |
|
|
|
/* |
|
* The number of bytes which this task has caused, or shall cause to be |
|
* written to disk. |
|
*/ |
|
u64 write_bytes; |
|
|
|
/* |
|
* A task can cause "negative" IO too. If this task truncates some |
|
* dirty pagecache, some IO which another task has been accounted for |
|
* (in its write_bytes) will not be happening. We _could_ just |
|
* subtract that from the truncating task's write_bytes, but there is |
|
* information loss in doing that. |
|
*/ |
|
u64 cancelled_write_bytes; |
|
#endif /* CONFIG_TASK_IO_ACCOUNTING */ |
|
};
|
|
|