From owner-freebsd-current@FreeBSD.ORG Thu Apr 27 14:13:31 2006 Return-Path: X-Original-To: freebsd-current@FreeBSD.org 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 045AB16A40D; Thu, 27 Apr 2006 14:13:31 +0000 (UTC) (envelope-from keramida@FreeBSD.org) Received: from igloo.linux.gr (igloo.linux.gr [62.1.205.36]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C73043D49; Thu, 27 Apr 2006 14:13:29 +0000 (GMT) (envelope-from keramida@FreeBSD.org) Received: from gothmog.pc (aris.bedc.ondsl.gr [62.103.39.226]) (authenticated bits=128) by igloo.linux.gr (8.13.6/8.13.6/Debian-1) with ESMTP id k3REDHSG016729 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Thu, 27 Apr 2006 17:13:18 +0300 Received: from gothmog.pc (gothmog [127.0.0.1]) by gothmog.pc (8.13.6/8.13.6) with ESMTP id k3REDItf074257; Thu, 27 Apr 2006 17:13:18 +0300 (EEST) (envelope-from keramida@FreeBSD.org) Received: (from giorgos@localhost) by gothmog.pc (8.13.6/8.13.6/Submit) id k3REDIV2074256; Thu, 27 Apr 2006 17:13:18 +0300 (EEST) (envelope-from keramida@FreeBSD.org) Date: Thu, 27 Apr 2006 17:13:18 +0300 From: Giorgos Keramidas To: Jiawei Ye Message-ID: <20060427141318.GA74140@gothmog.pc> References: Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="ikeVEW9yuYc//A+q" Content-Disposition: inline In-Reply-To: X-Hellug-MailScanner: Found to be clean X-Hellug-MailScanner-SpamCheck: not spam, SpamAssassin (score=-3.77, required 5, autolearn=not spam, ALL_TRUSTED -1.80, AWL 0.63, BAYES_00 -2.60) X-Hellug-MailScanner-From: keramida@freebsd.org X-Spam-Status: No Cc: John-Mark Gurney , freebsd-current@FreeBSD.org Subject: Re: top(1) stopped working on -current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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, 27 Apr 2006 14:13:31 -0000 --ikeVEW9yuYc//A+q Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On 2006-04-27 14:42, Jiawei Ye wrote: > leafy@chihiro:~$ top > top: sysctl(kern.ccpu...) failed: No such file or directory > > -current as of 4 hrs ago. The following change renames `kern.ccpu' to `kern.sched.ccpu', but it is kind of incomplete, IMHO. # Index: src/sys/kern/sched_4bsd.c # =================================================================== # --- src/sys/kern/sched_4bsd.c (revision 19) # +++ src/sys/kern/sched_4bsd.c (working copy) # @@ -31,11 +31,11 @@ # * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # * SUCH DAMAGE. # */ # # #include # -__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.78 2006/04/17 18:20:37 jhb Exp $"); # +__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.79 2006/04/26 19:42:38 jmg Exp $"); # # #include "opt_hwpmc_hooks.h" # # #define kse td_sched # # @@ -404,11 +404,11 @@ # #define loadfactor(loadav) (2 * (loadav)) # #define decay_cpu(loadfac, cpu) (((loadfac) * (cpu)) / ((loadfac) + FSCALE)) # # /* decay 95% of `ke_pctcpu' in 60 seconds; see CCPU_SHIFT before changing */ # static fixpt_t ccpu = 0.95122942450071400909 * FSCALE; /* exp(-1/20) */ # -SYSCTL_INT(_kern, OID_AUTO, ccpu, CTLFLAG_RD, &ccpu, 0, ""); # +SYSCTL_INT(_kern_sched, OID_AUTO, ccpu, CTLFLAG_RD, &ccpu, 0, ""); # # /* # * If `ccpu' is not equal to `exp(-1/20)' and you still want to use the # * faster/more-accurate formula, you'll have to estimate CCPU_SHIFT below # * and possibly adjust FSHIFT in "param.h" so that (FSHIFT >= CCPU_SHIFT). The main problems with this change are: 1) It doesn't update consumers of the kern.ccpu sysctl that we already have in the tree (i.e. top(1) which you saw breaking). 2) It doesn't update the `kern.ccpu' sysctl in the sched_ule.c scheduler, so it creates an inconsistency between different FreeBSD scheduling systems. I believe John-Mark can fix this easily, so I've copied him in this message. In the mean time, you can revert sched_4bsd.c to revision 1.78 and try to see if this fixes the problems top(1) is having. - Giorgos --ikeVEW9yuYc//A+q Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (FreeBSD) iD8DBQFEUNF+1g+UGjGGA7YRArU+AJ42HQFEkseJVp3+ucCabRooTtb04QCgnv1B 6TCQ4jfYZQ+Lu0VS4AtUuRI= =s5xR -----END PGP SIGNATURE----- --ikeVEW9yuYc//A+q--