From owner-freebsd-current@FreeBSD.ORG Wed Jun 23 00:11:42 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 A804616A4CE; Wed, 23 Jun 2004 00:11:42 +0000 (GMT) Received: from rwcrmhc11.comcast.net (rwcrmhc11.comcast.net [204.127.198.35]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9BDAA43D5E; Wed, 23 Jun 2004 00:11:42 +0000 (GMT) (envelope-from julian@elischer.org) Received: from interjet.elischer.org ([24.7.73.28]) by comcast.net (rwcrmhc11) with ESMTP id <20040623001137013009l4m7e>; Wed, 23 Jun 2004 00:11:37 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id RAA59095; Tue, 22 Jun 2004 17:11:37 -0700 (PDT) Date: Tue, 22 Jun 2004 17:11:36 -0700 (PDT) From: Julian Elischer To: Bosko Milekic In-Reply-To: <20040622225726.GA26611@freefall.freebsd.org> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: freebsd-current@freebsd.org 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: Wed, 23 Jun 2004 00:11:42 -0000 On Tue, 22 Jun 2004, Bosko Milekic wrote: > > I'm obviously talking nonsense below. Sorry. > > The real explanation is that they are put on a runqueue when executed: > > if (TD_AWAITING_INTR(td)) { > CTR2(KTR_INTR, "%s: setrunqueue %d", __func__, p->p_pid); > TD_CLR_IWAIT(td); > setrunqueue(td); > if (do_switch && > (ctd->td_critnest == 1) ) { > ... > > Sorry again! yes.. the question is.. does it make sense in a world with multiple schedulers to multiply set the priority of each ithread to (inumber * RQ_PPQ)? It happens to work with 4bsd and probably with ULE but it wouldn't make a lot of sense with (say) a monte-carlo scheduler that may not have run queues as such (such as Luigi did) or any scheduler for which RQ_PPQ was not a constant. > > -bosko > > Julian Elischer wrote: > >On Tue, 22 Jun 2004, John Baldwin wrote: > ... > >> 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? > > Not always. They have to be put on a runqueue if they block on a > mutex, say. > > -Bosko > >