From owner-freebsd-current@FreeBSD.ORG Tue Jun 22 22:27:08 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 80FA016A4CE; Tue, 22 Jun 2004 22:27:08 +0000 (GMT) Received: from sccrmhc13.comcast.net (sccrmhc13.comcast.net [204.127.202.64]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3AEC543D2D; Tue, 22 Jun 2004 22:27:07 +0000 (GMT) (envelope-from julian@elischer.org) Received: from interjet.elischer.org ([24.7.73.28]) by comcast.net (sccrmhc13) with ESMTP id <20040622222705016005r8sbe>; Tue, 22 Jun 2004 22:27:06 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id PAA57868; Tue, 22 Jun 2004 15:27:02 -0700 (PDT) Date: Tue, 22 Jun 2004 15:27:01 -0700 (PDT) From: Julian Elischer To: John Baldwin In-Reply-To: <200406221717.13179.jhb@FreeBSD.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-current@FreeBSD.org cc: FreeBSD current users Subject: Re: ithread priority question... X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jun 2004 22:27:08 -0000 On Tue, 22 Jun 2004, John Baldwin wrote: > On Monday 21 June 2004 03:48 am, Julian Elischer wrote: > > On Mon, 21 Jun 2004, Bruce Evans wrote: > > > On Sun, 20 Jun 2004, Julian Elischer wrote: > > > > In swi_add, the priority is multiplied by PPQ. > > > > This is a layering violation really because PPQ should only be known > > > > within the scheduler.... but..... "Why multiply by PPQ inthe first > > > > place?" we are not using the system run queues for interrupt threads. > > > > > > > > (PPQ = Priorities Per Queue). > > > > > > > > Without this you can remove runq.h from proc.h and include it only in > > > > the scheduler related files. > > > > > > I agree that this makes no sense. Apart from the layering violation, > > > It seems to just waste priority space. The wastage is not just cosmetic > > > since someone increased the number of SWIs although there was no room > > > for expansion. > > > > > > > > > Hardware ithread priorities are also separated by 4. The magic number 4 > > > is encoded in their definitions in priority.h. It's not clear if the 4 > > > is PPQ or just room for expansion without changing the ABI. Preserving > > > this ABI doesn't seem very important. > > > > seems pointless to me.. > > It looks to me that at on stage someone was considerring using the > > standard run-queue code to make interrupt threads runnable. > > They wanted each interrupt thread to eb on a differen queue and to use > > the ffs() code to find the next one to run. > > That was the intention. One question though, if the ithreads aren't on the > system run queues then which run queues are they on? aren't they run from the interupt? > > -- > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > "Power Users Use the Power to Serve" = http://www.FreeBSD.org >