I have a linux machine that has lots of processes in uninterruptible sleep state.
I'd like to know why this happens.
Here's part of the information of running top -o S
command:
top - 14:44:51 up 298 days, 4:47, 1 user, load average: 84.54, 85.11, 85.33
Tasks: 622 total, 1 running, 621 sleeping, 0 stopped, 0 zombie
%Cpu(s): 11.5 us, 2.0 sy, 0.0 ni, 85.6 id, 0.5 wa, 0.0 hi, 0.3 si, 0.0 st
KiB Mem: 32905924 total, 28823880 used, 4082044 free, 975272 buffers
KiB Swap: 33517564 total, 8570164 used, 24947400 free. 14813544 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2153 root 20 0 22904 1156 944 D 0.0 0.0 0:00.01 ps
2425 root 20 0 4372 712 532 D 0.0 0.0 0:00.01 pidof
4148 root 20 0 4372 712 532 D 0.0 0.0 0:00.00 pidof
6608 user1 20 0 14504 844 724 D 0.0 0.0 0:00.00 ps
7103 user1 20 0 14504 828 724 D 0.0 0.0 0:00.01 ps
7672 user1 20 0 14504 844 724 D 0.0 0.0 0:00.01 ps
8081 user1 20 0 14504 772 668 D 0.0 0.0 0:00.00 ps
12816 root 20 0 22904 1168 960 D 0.0 0.0 0:00.01 ps
13720 user1 20 0 14504 884 716 D 0.0 0.0 0:00.00 ps
14854 root 20 0 22904 1172 964 D 0.0 0.0 0:00.00 ps
17040 1200 20 0 16.078g 5760 4800 D 0.0 0.0 0:00.01 msedgedriver-97
17521 user1 20 0 14504 844 724 D 0.0 0.0 0:00.00 ps
17918 user1 20 0 14504 848 724 D 0.0 0.0 0:00.01 ps
19008 root 20 0 14504 848 724 D 0.0 0.0 0:00.01 ps
19926 root 20 0 14504 852 724 D 0.0 0.0 0:00.00 ps
The D
in S
column means that the process is in uninterruptible sleep state.
What might cause the load average to be 84.54, 85.11, 85.33
? This is too high.
Why does ps
command get stuck?
Here're some information about my machine:
$ nproc
8
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="14.04.5 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.5 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
$ iostat
Linux 3.13.0-123-generic (IOT-CI) 01/12/2023 _x86_64_ (8 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
8.80 0.00 1.90 0.64 0.00 88.66
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 37.57 164.32 1690.01 4233832157 43543586647
sdb 14.96 239.74 212.36 6177083529 5471449596
sdc 3.62 22.87 35.53 589207209 915440292
dm-0 157.96 127.00 1661.97 3272293073 42821280300
dm-1 16.33 37.27 28.03 960306880 722306144
dm-2 16.33 37.27 28.03 960301900 722306144
Here's the content of /proc/2153/stack
.
[<ffffffff813792b4>] call_rwsem_down_read_failed+0x14/0x30
[<ffffffff8117f332>] __access_remote_vm+0x42/0x1d0
[<ffffffff81180120>] access_process_vm+0x50/0x70
[<ffffffff8122ad2a>] proc_pid_cmdline+0x8a/0x120
[<ffffffff8122c00f>] proc_info_read+0x9f/0xf0
[<ffffffff811c2335>] vfs_read+0x95/0x160
[<ffffffff811c2e49>] SyS_read+0x49/0xa0
[<ffffffff8173dd9d>] system_call_fastpath+0x1a/0x1f
[<ffffffffffffffff>] 0xffffffffffffffff
2153 is the process id of a ps
command.