From owner-cvs-sys Sun Jun 7 03:52:19 1998 Return-Path: Received: (from daemon@localhost) by hub.freebsd.org (8.8.8/8.8.8) id DAA09727 for cvs-sys-outgoing; Sun, 7 Jun 1998 03:52:19 -0700 (PDT) (envelope-from owner-cvs-sys) 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 DAA09487; Sun, 7 Jun 1998 03:50:32 -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 DAA20399; Sun, 7 Jun 1998 03:49:20 -0700 (PDT) Date: Sun, 7 Jun 1998 03:49:20 -0700 (PDT) Message-Id: <199806071049.DAA20399@freefall.freebsd.org> To: cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG, cvs-sys@FreeBSD.ORG Subject: cvs commit: src/sys/ufs/ufs ufs_vnops.c Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk bde 1998/06/07 03:49:19 PDT Modified files: sys/ufs/ufs ufs_vnops.c Log: Fixed some longstanding timestamp bugs: 1. mark atimes and mtimes of special files and fifos for update upon successful completion of non-null i/o, not at the beginning of the syscall. 2. never update file times for readonly filesystems. They were updated for stats and closes but not for syncs. The updates were of course only in-core and were thrown away when the inode was uncached, so the times sometimes appeared to go backwards. Improved comments in code related to (1) (mostly by removing them). Unmacroized ITIMES(). The test in (2) bloated it even more. Don't call getmicrotime() in the function version of it when we only need the time in seconds. Revision Changes Path 1.86 +70 -57 src/sys/ufs/ufs/ufs_vnops.c