From owner-freebsd-bugs Fri Dec 29 21:50:07 1995 Return-Path: owner-bugs Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id VAA00991 for bugs-outgoing; Fri, 29 Dec 1995 21:50:07 -0800 (PST) Received: (from gnats@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id VAA00985 Fri, 29 Dec 1995 21:50:03 -0800 (PST) Resent-Date: Fri, 29 Dec 1995 21:50:03 -0800 (PST) Resent-Message-Id: <199512300550.VAA00985@freefall.freebsd.org> Resent-From: gnats (GNATS Management) Resent-To: freebsd-bugs Resent-Reply-To: FreeBSD-gnats@freefall.FreeBSD.org, davidf@mks.com Received: from mail.mks.com (mks-gate.mks.com [142.77.7.224]) by freefall.freebsd.org (8.7.3/8.7.3) with SMTP id VAA00865 for ; Fri, 29 Dec 1995 21:46:38 -0800 (PST) Received: from mks.com (giga.mks.com [1.0.0.51]) by mail.mks.com (8.6.8.1/DEKA-950919b) with SMTP id AAA22192 for ; Sat, 30 Dec 1995 00:45:36 -0500 Received: from deci.mks.com by mks.com (4.1/GIGA-950913a) id AA10102; Sat, 30 Dec 95 00:45:34 EST Received: (from davidf@localhost) by deci.mks.com (8.6.12/8.6.12) id AAA00447; Fri, 29 Dec 1995 00:47:43 -0500 Message-Id: <199512290547.AAA00447@deci.mks.com> Date: Fri, 29 Dec 1995 00:47:43 -0500 From: "David J. Fiander" Reply-To: davidf@mks.com To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: kern/921: Sender: owner-bugs@freebsd.org Precedence: bulk >Number: 921 >Category: kern >Synopsis: >Confidential: yes >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Dec 29 21:50:01 PST 1995 >Last-Modified: >Originator: David J. Fiander >Organization: Mortice Kern Systems, Inc. >Release: FreeBSD 2.1-STABLE i386 >Environment: >Description: The user and system times returned by getrusage() stop working once the system has been up sufficiently long (I'm not sure what "sufficiently long" is, but it's on the order of hours or days). When they break, they always return 0. I've tracked this down to the kernel function calcru(). This breaks time(1), top(1), and the kernel status information returned from the extended control character ^T. For top(1) and the kernel status info, not only are the times broken, but so is the %cpu reported. >How-To-Repeat: Leave the system running for a while with top running. Eventually the most active processes will suddenly have 0% CPU usage. >Fix: My guess is that the calculations in calcru() are overflowing. >Audit-Trail: >Unformatted: David J. Fiander no getrusage(2) stops working once the system has been up long enough non-critical high sw-bug