diff options
author | Paul Wise <pabs3@bonedaddy.net> | 2021-10-01 07:32:49 +0800 |
---|---|---|
committer | Paul Wise <pabs3@bonedaddy.net> | 2021-10-01 07:37:15 +0800 |
commit | dd4fcc71b1184264bed25fbc0ce7e2d758d8c396 (patch) | |
tree | 53c9133bb892b08d4924f0285976a5f3ea75fea6 | |
parent | 68be5e5c83e7ce5c0f2177f78d75c54f9d6bbd86 (diff) | |
download | iotop-dd4fcc71b1184264bed25fbc0ce7e2d758d8c396.tar.gz |
Document the new kernel.task_delayacct sysctl requirement in Linux 5.14
Fixes: https://github.com/Tomas-M/iotop/issues/21
Reported-by: @ManuLinares
Forwarded-by: Boian Bonev <bbonev@ipacct.com>
-rw-r--r-- | README | 3 | ||||
-rw-r--r-- | iotop.8 | 3 | ||||
-rw-r--r-- | iotop/data.py | 2 | ||||
-rw-r--r-- | iotop/ui.py | 4 |
4 files changed, 8 insertions, 4 deletions
@@ -1,7 +1,8 @@ Iotop is a Python program with a top like UI used to show of behalf of which process is the I/O going on. It requires Python >= 2.7 and a Linux kernel >= 2.6.20 with the CONFIG_TASK_DELAY_ACCT CONFIG_TASKSTATS, -CONFIG_TASK_IO_ACCOUNTING and CONFIG_VM_EVENT_COUNTERS options on. +CONFIG_TASK_IO_ACCOUNTING and CONFIG_VM_EVENT_COUNTERS build options on +and for Linux kernels since 5.14, the kernel.task_delayacct sysctl enabled. To run a local version of iotop: @@ -9,7 +9,8 @@ iotop watches I/O usage information output by the Linux kernel (requires 2.6.20 or later) and displays a table of current I/O usage by processes or threads on the system. At least the CONFIG_TASK_DELAY_ACCT, CONFIG_TASK_IO_ACCOUNTING, CONFIG_TASKSTATS and CONFIG_VM_EVENT_COUNTERS -options need to be enabled in your Linux kernel build configuration. +options need to be enabled in your Linux kernel build configuration and +since Linux kernel 5.14, the kernel.task_delayacct sysctl enabled. .PP iotop displays columns for the I/O bandwidth read and written by each process/thread during the sampling period. It also displays the percentage diff --git a/iotop/data.py b/iotop/data.py index 3874974..e9c06be 100644 --- a/iotop/data.py +++ b/iotop/data.py @@ -60,7 +60,7 @@ if not ioaccounting or not vm_event_counters: if not ioaccounting: print(' - I/O accounting support ' \ '(CONFIG_TASKSTATS, CONFIG_TASK_DELAY_ACCT, ' \ - 'CONFIG_TASK_IO_ACCOUNTING)') + 'CONFIG_TASK_IO_ACCOUNTING, kernel.task_delayacct sysctl)') if not vm_event_counters: print(' - VM event counters (CONFIG_VM_EVENT_COUNTERS)') sys.exit(1) diff --git a/iotop/ui.py b/iotop/ui.py index 9eb60c8..fa7e35b 100644 --- a/iotop/ui.py +++ b/iotop/ui.py @@ -494,7 +494,9 @@ class IOTopUI(object): if Stats.has_blkio_delay_total: status_msg = None else: - status_msg = ('CONFIG_TASK_DELAY_ACCT not enabled in kernel, ' + status_msg = ('CONFIG_TASK_DELAY_ACCT ' + 'and kernel.task_delayacct sysctl ' + 'not enabled in kernel, ' 'cannot determine SWAPIN and IO %') help_lines = [] |