8

I'm running Ubuntu 10.10:

uname -a
Linux mt-xps 2.6.35-22-generic #35-Ubuntu SMP Sat Oct 16 20:45:36 UTC 2010 x86_64 GNU/Linux

When I run top, I occasionally see a "kslowd000" or similar process popping up in the top CPU usage list. I've tried googling kslowd, but found no explanation to what it is. manpages also don't help.

What does it do ? And how would I find out myself ?

Martin T.
  • 182
  • 1
  • 5

2 Answers2

6

It's a kernel thread performing things that typically take a lot of time. For more information, see slow-work.txt.

Janne Pikkarainen
  • 31,852
  • 4
  • 58
  • 81
  • Thanks. Is there some sort of manpage or other lookup mechanism for this, or do you have to know/guess/google which daemon name is connected to which feature, and part of the Kernel or another program ? – Martin T. Nov 02 '10 at 15:48
  • Guess, Google or just plain know. :-) OK, there are books and so on written about kernel, but they are usually _very_ hard to read and understand. Kernel internals is not the easiest thing on Earth ... – Janne Pikkarainen Nov 02 '10 at 16:57
  • That's kinda disappointing, really. There's usually a lot of info for first-time users via the graphical help, and there's mind-numbing technical detail via man pages etc. But to find out concepts and which thing (program/daemon/folder/abbreviation) belongs to which other, you have to guess or ask dumb-sounding questions. – Martin T. Nov 03 '10 at 09:01
  • Yeah. There are various sites such as http://kernelnewbies.org/ easing your journey into kernel internals, but for bigger picture the documentation lacks in many cases. – Janne Pikkarainen Nov 03 '10 at 10:19
  • One hint - "processes" that are listed in ps output with square brackets: [kslowd000] are usually (always?) kernel threads. – Dan Pritts Apr 29 '13 at 21:01
0

To debug kslowd, you'll need to enable debugging in the kernel (and recompile is necessary) by adding to your kernel config:

CONFIG_SLOW_WORK_DEBUG=y

Reboot, then run

watch -n0 cat /sys/kernel/debug/slow_work/runqueue

petertonoli
  • 613
  • 3
  • 12