Run-queue vs cores
vmstat r column (runnable) above nproc means CPU saturation, not just high load
vmstat 1 5 | awk 'NR>2{print "runq="$1" blocked="$2}'; nproc
- tool
- troubleshooting32 commands
More troubleshooting commands
-
ps -o nlwp= -p <pid>; ps -eLf | wc -lThread count per pid and system-wide; runaway threads exhaust kernel.pid_max
-
while sleep 5; do ps -o rss= -p <pid> | awk '{print strftime("%T"),$1/1024"MB"}'; doneSample RSS every 5s to confirm a real leak (monotonic growth) vs steady churn
-
cat /proc/<pid>/smaps_rollupOne-shot Rss/Pss/Swap totals without parsing full smaps; cheap on huge maps
-
pmap -x <pid> | sort -k3 -rn | headTop RSS mappings by region; spot a leaking heap, mmap or shared lib bloat
-
slabtop -o -s c | head -20Sort slab caches by size; dentry/inode bloat explains kernel memory pressure