From owner-freebsd-current@FreeBSD.ORG Thu Apr 22 14:24:52 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 34B7616A4CE for ; Thu, 22 Apr 2004 14:24:52 -0700 (PDT) Received: from fledge.watson.org (fledge.watson.org [204.156.12.50]) by mx1.FreeBSD.org (Postfix) with ESMTP id DCDCE43D2F for ; Thu, 22 Apr 2004 14:24:51 -0700 (PDT) (envelope-from robert@fledge.watson.org) Received: from fledge.watson.org (localhost [127.0.0.1]) by fledge.watson.org (8.12.11/8.12.11) with ESMTP id i3MLOVPW027226; Thu, 22 Apr 2004 17:24:31 -0400 (EDT) (envelope-from robert@fledge.watson.org) Received: from localhost (robert@localhost)i3MLOUR1027223; Thu, 22 Apr 2004 17:24:31 -0400 (EDT) (envelope-from robert@fledge.watson.org) Date: Thu, 22 Apr 2004 17:24:30 -0400 (EDT) From: Robert Watson X-Sender: robert@fledge.watson.org To: Nikos Ntarmos In-Reply-To: <20040421003230.GA17810@diogenis.ceid.upatras.gr> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: current@FreeBSD.org Subject: Re: P_NOLOAD + ULE = high load averages 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: Thu, 22 Apr 2004 21:24:52 -0000 On Wed, 21 Apr 2004, Nikos Ntarmos wrote: > There was a thread on "unusually high load averages" when running under > sched_ule, which (afaik) came at an abrupt halt in January 2004. > Anyway, I've been looking at this thing lately and have come to believe > that "pagezero" is (one of) the culprit(s). IMO the source of the > problem lies in /sys/kern/sched_ule.c having no provision for processes > with P_NOLOAD set. With pagezero not running at PRI_ITHD, > kseq_load_{add,rem} count pagezero as oh-another-normal-process, thus > the "expected-plus-one" load reported in the above thread. The attached > diff should fix this (at least it has fixed it here -- running > 5.2-CURRENT on a PCA56, just cvsup'ed from cvsup.gr.freebsd.org). Could > someone please review/commit the changes or should I better send-pr it? I chatted with Jeff briefly about this change: he pointed out that this change may not work well if the flag can change at run-time, and it looks like (from a grep) that it may be. It looks like it only changes because it isn't set in kthread_create(), since it appears to be a static thread property once the thread is off running, so perhaps we just need to make sure it's set in kthread_create and doesn't change later. Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Senior Research Scientist, McAfee Research