From owner-freebsd-current@FreeBSD.ORG Mon Jun 21 07:49:15 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 4D92916A4CE for ; Mon, 21 Jun 2004 07:49:15 +0000 (GMT) Received: from sccrmhc11.comcast.net (sccrmhc11.comcast.net [204.127.202.55]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1434C43D2D for ; Mon, 21 Jun 2004 07:49:15 +0000 (GMT) (envelope-from julian@elischer.org) Received: from interjet.elischer.org ([24.7.73.28]) by comcast.net (sccrmhc11) with ESMTP id <2004062107483201100r46one>; Mon, 21 Jun 2004 07:48:33 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id AAA30899; Mon, 21 Jun 2004 00:48:31 -0700 (PDT) Date: Mon, 21 Jun 2004 00:48:29 -0700 (PDT) From: Julian Elischer To: Bruce Evans In-Reply-To: <20040621123607.C8440@gamplex.bde.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII 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: Mon, 21 Jun 2004 07:49:15 -0000 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. Feel free to fix it:-) I'm off to bed but I'll look at it again tomorrow if you haven't. > > Bruce >