diff options
Diffstat (limited to 'libdiskfs')
-rw-r--r-- | libdiskfs/ChangeLog | 5 | ||||
-rw-r--r-- | libdiskfs/diskfs.h | 4 | ||||
-rw-r--r-- | libdiskfs/node-times.c | 9 |
3 files changed, 18 insertions, 0 deletions
diff --git a/libdiskfs/ChangeLog b/libdiskfs/ChangeLog index 197ec5ed..9743107e 100644 --- a/libdiskfs/ChangeLog +++ b/libdiskfs/ChangeLog @@ -1,3 +1,8 @@ +2007-08-16 Samuel Thibault <samuel.thibault@ens-lyon.org> + + * diskfs.h (diskfs_set_node_atime): New declaration. + * node-times.c (diskfs_set_node_atime): New function. + 2007-04-04 Thomas Schwinge <tschwinge@gnu.org> * opts-std-startup.c (parse_startup_opt) diff --git a/libdiskfs/diskfs.h b/libdiskfs/diskfs.h index 70ce1e3f..8daade6f 100644 --- a/libdiskfs/diskfs.h +++ b/libdiskfs/diskfs.h @@ -864,6 +864,10 @@ error_t diskfs_clear_directory (struct node *dp, struct node *pdp, error_t diskfs_init_dir (struct node *dp, struct node *pdp, struct protid *cred); +/* If disk is not readonly and the noatime option is not enabled, set + NP->dn_set_atime. */ +void diskfs_set_node_atime (struct node *np); + /* If NP->dn_set_ctime is set, then modify NP->dn_stat.st_ctime appropriately; do the analogous operation for atime and mtime as well. */ void diskfs_set_node_times (struct node *np); diff --git a/libdiskfs/node-times.c b/libdiskfs/node-times.c index fa3a20a7..c36b0be6 100644 --- a/libdiskfs/node-times.c +++ b/libdiskfs/node-times.c @@ -22,6 +22,15 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "priv.h" #include <maptime.h> +/* If disk is not readonly and the noatime option is not enabled, set + NP->dn_set_atime. */ +void +diskfs_set_node_atime (struct node *np) +{ + if (!_disk_noatime && !diskfs_check_readonly ()) + np->dn_set_atime = 1; +} + /* If NP->dn_set_ctime is set, then modify NP->dn_stat.st_ctime appropriately; do the analogous operation for atime and mtime as well. */ void |