Loss of detail from kthreads

Kris Kennaway kris at FreeBSD.org
Tue Nov 13 16:46:42 PST 2007


Since the conversion from kprocs to kthreads there is a loss of 
precision in how kernel process names are reported, because they now 
mostly report the kproc name which is very generic.

e.g. if you only use top -S then you only have "idle", "intr" processes, 
etc.  You have to use top -SH, but then you also see the userland 
threads, and there might be hundreds of them obscuring the kernel 
threads.  Also, ps now only displays the kproc:

root      12 100.0  0.0     0   136  ??  RL   Sat01PM   6:28.30 [intr]

so you can't see which interrupt(s) are using CPU.

Finally, I noticed that DDB only displays the kproc name in e.g. allpcpu:

cpuid        = 1
curthread    = 0xcb41da50: pid 12 "intr"
curpcb       = 0xe992cd90
fpcurthread  = none
idlethread   = 0xc67b7420: pid 11 "idle"
APIC ID      = 1
currentldt   = 0x50

Probably other things are also affected.  All of these make kernel 
analysis and debugging much less convenient, so this seems to me to be a 
step backwards.  Are you still working on fixing these issues?


More information about the freebsd-current mailing list