summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libdiskfs/ChangeLog8
-rw-r--r--libdiskfs/conch-fetch.c4
-rw-r--r--libdiskfs/node-times.c5
-rw-r--r--libdiskfs/rdwr-internal.c6
4 files changed, 13 insertions, 10 deletions
diff --git a/libdiskfs/ChangeLog b/libdiskfs/ChangeLog
index 94979a7c..ecf93c4e 100644
--- a/libdiskfs/ChangeLog
+++ b/libdiskfs/ChangeLog
@@ -1,3 +1,11 @@
+1999-09-20 Thomas Bushnell, BSG <tb@mit.edu>
+
+ * node-times.c (diskfs_set_node_times): Don't implement
+ _diskfs_noatime here.
+ * conch-fetch.c (iohelp_fetch_shared_data): Don't update
+ dn_set_atime on affected node if _diskfs_noatime.
+ * rdwr-internal.c (_diskfs_rdwr_internal): Likewise.
+
1999-09-19 Roland McGrath <roland@baalperazim.frob.com>
* node-times.c (diskfs_set_node_times): If _diskfs_noatime is set and
diff --git a/libdiskfs/conch-fetch.c b/libdiskfs/conch-fetch.c
index 9d31265c..2c5d0fd8 100644
--- a/libdiskfs/conch-fetch.c
+++ b/libdiskfs/conch-fetch.c
@@ -1,5 +1,5 @@
/*
- Copyright (C) 1994, 1995, 1996 Free Software Foundation
+ Copyright (C) 1994, 1995, 1996, 1999 Free Software Foundation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
@@ -58,7 +58,7 @@ iohelp_fetch_shared_data (void *arg)
cred->po->np->dn_set_mtime = 1;
mod = 1;
}
- if (cred->mapped->accessed)
+ if (cred->mapped->accessed && ! _diskfs_noatime)
{
cred->po->np->dn_set_atime = 1;
mod = 1;
diff --git a/libdiskfs/node-times.c b/libdiskfs/node-times.c
index 968cfb2f..3931ffb0 100644
--- a/libdiskfs/node-times.c
+++ b/libdiskfs/node-times.c
@@ -29,11 +29,6 @@ diskfs_set_node_times (struct node *np)
{
struct timeval t;
- if (_diskfs_noatime /* Globally disabled for the filesystem. */
- && !np->dn_set_mtime
- && !np->dn_set_ctime)
- np->dn_set_atime = 0;
-
if (!np->dn_set_mtime && !np->dn_set_atime && !np->dn_set_ctime)
return;
diff --git a/libdiskfs/rdwr-internal.c b/libdiskfs/rdwr-internal.c
index 046467a3..790fc12e 100644
--- a/libdiskfs/rdwr-internal.c
+++ b/libdiskfs/rdwr-internal.c
@@ -1,5 +1,5 @@
/*
- Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation
+ Copyright (C) 1994, 1995, 1996, 1997, 1999 Free Software Foundation
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
@@ -45,7 +45,7 @@ _diskfs_rdwr_internal (struct node *np,
{
if (dir)
np->dn_set_mtime = 1;
- else
+ else if (! _diskfs_noatime)
np->dn_set_atime = 1;
}
@@ -61,7 +61,7 @@ _diskfs_rdwr_internal (struct node *np,
{
if (dir)
np->dn_set_mtime = 1;
- else
+ else if (!_diskfs_noatime)
np->dn_set_atime = 1;
}