KTR changes
Nate Lawson
nate at root.org
Mon Oct 31 16:32:51 PST 2005
I've done a quick audit of the tree and found this number of KTR uses
for each label.
Label Count
---- -----
KTR_GEN 30
KTR_NET 0
KTR_DEV 1
KTR_LOCK 36
KTR_SMP 55
KTR_FS 0
KTR_PMAP 28
KTR_MALLOC 0
KTR_TRAP 31
KTR_INTR 35
KTR_SIG 21
KTR_CLK 1
KTR_PROC 31
KTR_SYSC 27
KTR_INIT 10
KTR_KGDB 0
KTR_IO 0
KTR_EVH 9
KTR_VFS 19
KTR_VOP 102 (Due to dynamically generated vop files)
KTR_VM 5
KTR_WITNESS 10
KTR_RUNQ 30
KTR_CONTENTION 2
KTR_UMA 2
KTR_CALLOUT 3
KTR_GEOM 23
KTR_BUSDMA 56
KTR_CRITICAL 2
KTR_SCHED 25
KTR_BUF 26
As such, I'd like to mark the following unused and free for allocation:
KTR_NET, KTR_FS, KTR_MALLOC, KTR_KGDB, KTR_IO
These should be merged the following under KTR_MALLOC (KTR_MEM?):
KTR_UMA: uma_zalloc_arg, uma_zfree_arg
KTR_VM: vmspace_alloc, vmspace_free, vm_map_create, vm_map_entry_unlink
Merge under KTR_SYNCH (KTR_LOCK?):
KTR_CRITICAL: critical enter/exit
KTR_CONTENTION: mutex contention start/end
Merge under KTR_TIMER:
KTR_CLK: hard clock firing
KTR_CALLOUT: Giant or mutex-based callout run
Also, it appears that we overran into KTR_CTx space with KTR_UMA
(rwatson). Is this something that needs to be changed or should we
reduce KTR_CTx?
Last, I'd like to add a new level, KTR_POWER, for use with power
management events. Since we only have 32 bits of KTR levels, it's
important to use them carefully. Comments on all this are welcome.
-Nate
More information about the freebsd-arch
mailing list