Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

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 ?

share|improve this question
add comment

2 Answers

up vote 6 down vote accepted

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

share|improve this answer
    
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 ? –  M.G.Palmer Nov 2 '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 2 '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. –  M.G.Palmer Nov 3 '10 at 9:01
    
Yeah. There are various sites such as kernelnewbies.org easing your journey into kernel internals, but for bigger picture the documentation lacks in many cases. –  Janne Pikkarainen Nov 3 '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
add comment

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

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.