From owner-freebsd-arch@FreeBSD.ORG Tue Nov 1 00:32:51 2005 Return-Path: X-Original-To: arch@freebsd.org Delivered-To: freebsd-arch@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9687916A41F; Tue, 1 Nov 2005 00:32:51 +0000 (GMT) (envelope-from nate@root.org) Received: from www.cryptography.com (li-22.members.linode.com [64.5.53.22]) by mx1.FreeBSD.org (Postfix) with ESMTP id C1F2243D6B; Tue, 1 Nov 2005 00:32:48 +0000 (GMT) (envelope-from nate@root.org) Received: from [10.0.0.33] (adsl-67-119-74-222.dsl.sntc01.pacbell.net [67.119.74.222]) by www.cryptography.com (8.12.8/8.12.8) with ESMTP id jA10Wkxq023865 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Mon, 31 Oct 2005 16:32:47 -0800 Message-ID: <4366999B.4070005@root.org> Date: Mon, 31 Oct 2005 14:24:27 -0800 From: Nate Lawson User-Agent: Mozilla Thunderbird 1.0.6 (Windows/20050716) X-Accept-Language: en-us, en MIME-Version: 1.0 To: arch@freebsd.org Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Subject: KTR changes X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 01 Nov 2005 00:32:51 -0000 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