From owner-freebsd-hackers@FreeBSD.ORG Mon Dec 3 10:23:16 2007 Return-Path: Delivered-To: hackers@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E18116A417; Mon, 3 Dec 2007 10:23:16 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id 3F20513C44B; Mon, 3 Dec 2007 10:23:16 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id E828046E1F; Mon, 3 Dec 2007 05:27:53 -0500 (EST) Date: Mon, 3 Dec 2007 10:23:07 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Andrew Thompson In-Reply-To: <20071203093531.GA31649@heff.fud.org.nz> Message-ID: <20071203102219.N79674@fledge.watson.org> References: <20071202233435.G74097@fledge.watson.org> <20071203032422.GC30756@heff.fud.org.nz> <20071203090800.U74097@fledge.watson.org> <20071203093531.GA31649@heff.fud.org.nz> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: hackers@FreeBSD.org, current@FreeBSD.org Subject: Re: procstat(1) committed to CVS HEAD X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Dec 2007 10:23:16 -0000 On Mon, 3 Dec 2007, Andrew Thompson wrote: >>> I would like to give some feedback. I listed the threads of proc 12 which >>> is intr, >>> >>> # procstat -t 12 >>> PID TID COMM CPU PRI STATE WCHAN >>> 12 100003 intr 0 40 wait - >>> 12 100004 intr 0 52 wait - >>> 12 100030 intr 0 16 wait - >>> [...] >>> 12 100036 intr 0 36 wait - >>> 12 100037 intr 0 24 wait - >>> >>> I had expected it to show the thread name such as 'irq14: ata0', is this >>> possible (and a good thing to do)? >> >> I just print out the 'comm' field returned by the generic sysctl, and I >> notice that top(1) with -S is now having the same problem as procstat(1). I >> think this is a kernel bug in how we initialize or otherwise handle thread >> names, and fairly recent, as it's not present on my 7.0BETA2 box. If I had >> to guess, it's that these are now 'true threads' under the single 'intr' >> proc, and that we're not exporting the thread name? > > Changing to ki_ocomm gets the desired result for single and multithreaded > processes. I wonder if we should be renaming ki_ocomm to ki_tdcomm or ki_tdname? Robert N M Watson Computer Laboratory University of Cambridge > > > Andrew > > Index: procstat_threads.c > =================================================================== > RCS file: /home/ncvs/src/usr.bin/procstat/procstat_threads.c,v > retrieving revision 1.1 > diff -u -p -r1.1 procstat_threads.c > --- procstat_threads.c 2 Dec 2007 23:31:45 -0000 1.1 > +++ procstat_threads.c 3 Dec 2007 06:06:46 -0000 > @@ -82,8 +82,8 @@ procstat_threads(pid_t pid, struct kinfo > kipp = &kip[i]; > printf("%5d ", pid); > printf("%6d ", kipp->ki_tid); > - printf("%-20s ", strlen(kipp->ki_comm) ? > - kipp->ki_comm : "-"); > + printf("%-20s ", strlen(kipp->ki_ocomm) ? > + kipp->ki_ocomm : "-"); > if (kipp->ki_oncpu != 255) > printf("%3d ", kipp->ki_oncpu); > else if (kipp->ki_lastcpu != 255) > >