From owner-freebsd-current Thu Oct 3 4:53:16 2002 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 D921137B401; Thu, 3 Oct 2002 04:53:14 -0700 (PDT) Received: from ip68-4-88-233.oc.oc.cox.net (ip68-4-88-233.oc.oc.cox.net [68.4.88.233]) by mx1.FreeBSD.org (Postfix) with ESMTP id 36DFF43E75; Thu, 3 Oct 2002 04:53:14 -0700 (PDT) (envelope-from housel@acm.org) Received: from ip68-4-88-233.oc.oc.cox.net (localhost [127.0.0.1]) by ip68-4-88-233.oc.oc.cox.net (8.12.6/8.12.6) with ESMTP id g93Br8jL049993; Thu, 3 Oct 2002 04:53:08 -0700 (PDT) (envelope-from housel@acm.org) Received: (from housel@localhost) by ip68-4-88-233.oc.oc.cox.net (8.12.6/8.12.6/Submit) id g93Bqw8k049992; Thu, 3 Oct 2002 04:52:58 -0700 (PDT) X-Authentication-Warning: ip68-4-88-233.oc.oc.cox.net: housel set sender to housel@acm.org using -f Subject: Re: Junior Kernel Hacker page updated... From: "Peter S. Housel" To: current@FreeBSD.ORG Cc: Poul-Henning Kamp In-Reply-To: <20021002214028.GA94673@frog.fafoe> References: <16372.1031998673@critter.freebsd.dk> <20021002214028.GA94673@frog.fafoe> Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Ximian Evolution 1.0.8 Date: 03 Oct 2002 04:52:47 -0700 Message-Id: <1033645967.48198.1.camel@ip68-4-88-233.oc.oc.cox.net> Mime-Version: 1.0 Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Wed, 2002-10-02 at 14:40, Stefan Farfeleder wrote: > On Sat, Sep 14, 2002 at 12:17:53PM +0200, Poul-Henning Kamp wrote: > > > > This is just to note that I have updated the JKH page with a lot of new > > stuff, so if your coding-pencil itches: > > > > http://people.freebsd.org/~phk/TODO/ > > |Make -j improvement > | > |make(1) with -j option uses a select loop to wait for events, and every > |100msec it drops out to look for processes exited etc. A pure "make > |buildworld" on a single-CPU machine is up to 25% faster that the best > |"make -j N buildworld" time on the same hardware. Changing to timeout > |to be 10msec improves things about 10%. > |I think that make(1) should use kqueue(2) instead, since that would > |eliminate the need for timeouts. > > Ok, here's what I came up with. However, with the patch applied, each > 'make buildworld' on a SMP machine throws tons of > > /freebsd/current/src/sys/vm/uma_core.c:1307: could sleep with "filedesc structure" locked from /freebsd/current/src/sys/kern/kern_event.c:959 > > at me and freezes badly at some point (no breaking into ddb possible). > This is totally repeatable. Is anybody able to reproduce (and maybe > fix) this? This question is not relevant to the problem at hand, but... wouldn't it be more portable to catch SIGCHLD (and continue using select(2)) than to use kqueue(2)? -Peter- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message