From owner-freebsd-performance@FreeBSD.ORG Tue Mar 18 13:59:16 2008 Return-Path: Delivered-To: freebsd-performance@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 93E3F1065670; Tue, 18 Mar 2008 13:59:16 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id 9142A8FC26; Tue, 18 Mar 2008 13:59:16 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from zion.baldwin.cx (66-23-211-162.clients.speedfactory.net [66.23.211.162]) by elvis.mu.org (Postfix) with ESMTP id D8CCA1A4D7E; Tue, 18 Mar 2008 06:57:57 -0700 (PDT) From: John Baldwin To: Robert Watson Date: Tue, 18 Mar 2008 09:23:12 -0400 User-Agent: KMail/1.9.7 References: <20080210120013.4C3D116A421@hub.freebsd.org> <200803180845.28959.jhb@freebsd.org> <20080318130241.J17188@fledge.watson.org> In-Reply-To: <20080318130241.J17188@fledge.watson.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200803180923.13032.jhb@freebsd.org> X-Mailman-Approved-At: Tue, 18 Mar 2008 14:16:06 +0000 Cc: freebsd-performance@freebsd.org, Aminuddin Abdullah Subject: Re: V7 High CPU Usage on swi5:+, what is this process? X-BeenThere: freebsd-performance@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Performance/tuning List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Mar 2008 13:59:16 -0000 On Tuesday 18 March 2008 09:04:05 am Robert Watson wrote: > On Tue, 18 Mar 2008, John Baldwin wrote: > >> '+' is used in a swi name to indicate that the names of the interrupts > >> to put in the thread name are too long, and the code looks like it was > >> written under the assumption that at least one name would fit. It > >> sounds like in this case, none fit. We should fix this code, but in the > >> mean time, what you might consider doing is hacking intr_event_update() > >> in kern_intr.c to print out overflowing names to the console using > >> printf(9) so you can at least see what they are. This is the somewhat > >> suspect bit of code: > > > > The code is not suspect as p_comm is of fixed length. Someone just used > > too long of a name for a swi handler. > > I was wondering whether we might not do better to put as much in as we can > but truncate with a '*', so you at least get a fractional swi name. Under > what situations do we use a single ithread for multiple swi's? The softclock one gets overloaded with some tty handlers. This code is also just generic ithread code common to swi's and hardware interrupts. -- John Baldwin