From owner-cvs-all Tue Jul 28 10:56:59 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id KAA03649 for cvs-all-outgoing; Tue, 28 Jul 1998 10:56:59 -0700 (PDT) (envelope-from owner-cvs-all) Received: from freefall.freebsd.org (freefall.FreeBSD.ORG [204.216.27.21]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id KAA03636; Tue, 28 Jul 1998 10:56:54 -0700 (PDT) (envelope-from bde@FreeBSD.org) From: Bruce Evans Received: (from bde@localhost) by freefall.freebsd.org (8.8.8/8.8.5) id KAA07286; Tue, 28 Jul 1998 10:55:38 -0700 (PDT) Date: Tue, 28 Jul 1998 10:55:38 -0700 (PDT) Message-Id: <199807281755.KAA07286@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG Subject: cvs commit: src/sys/i386/i386 exception.s Sender: owner-cvs-all@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk bde 1998/07/28 10:55:37 PDT Modified files: sys/i386/i386 exception.s Log: Set p->p_switchtime to switchtime instead of to the current time in fork_trampoline() if switchtime is valid. This fixes not accounting for the time between the previous context switch and and the current time (when the forked child starts up here) in most cases - the time is now counted in the child's runtime. I think it actually fixes all cases, and switchtime is always valid here, since there must have been a context switch just before the forked child starts up. Some code should be removed if this is correct. The check that switchtime is valid sometimes gives a false negative because the check isn't correct until the after the first context switch after the system has been up for >= 1 second. Revision Changes Path 1.54 +11 -1 src/sys/i386/i386/exception.s