aboutsummaryrefslogtreecommitdiff
path: root/sys/gnu/ext2fs
diff options
context:
space:
mode:
authorBruce Evans <bde@FreeBSD.org>1998-07-03 18:46:52 +0000
committerBruce Evans <bde@FreeBSD.org>1998-07-03 18:46:52 +0000
commit33cc029eab0de077689766c0b48c0f356bda77ad (patch)
treefe69b5155e43274bedb15434c935724fcf5781eb /sys/gnu/ext2fs
parentd4af231c81374fa69515b16a4369a95f062dac3a (diff)
Notes
Diffstat (limited to 'sys/gnu/ext2fs')
-rw-r--r--sys/gnu/ext2fs/ext2_inode.c20
1 files changed, 4 insertions, 16 deletions
diff --git a/sys/gnu/ext2fs/ext2_inode.c b/sys/gnu/ext2fs/ext2_inode.c
index f6cc413c49bb..a094ad283fe9 100644
--- a/sys/gnu/ext2fs/ext2_inode.c
+++ b/sys/gnu/ext2fs/ext2_inode.c
@@ -91,25 +91,13 @@ ext2_update(vp, access, modify, waitfor)
struct inode *ip;
int error;
+ ufs_itimes(vp);
ip = VTOI(vp);
- if (vp->v_mount->mnt_flag & MNT_RDONLY) {
- ip->i_flag &=
- ~(IN_ACCESS | IN_CHANGE | IN_MODIFIED | IN_UPDATE);
+ if ((ip->i_flag & IN_MODIFIED) == 0)
return (0);
- }
- if ((ip->i_flag &
- (IN_ACCESS | IN_CHANGE | IN_MODIFIED | IN_UPDATE)) == 0)
+ ip->i_flag &= ~IN_MODIFIED;
+ if (vp->v_mount->mnt_flag & MNT_RDONLY)
return (0);
- if (ip->i_flag & IN_ACCESS)
- ip->i_atime = access->tv_sec;
- if (ip->i_flag & IN_UPDATE) {
- ip->i_mtime = modify->tv_sec;
- ip->i_modrev++;
- }
- if (ip->i_flag & IN_CHANGE) {
- ip->i_ctime = time_second;
- }
- ip->i_flag &= ~(IN_ACCESS | IN_CHANGE | IN_MODIFIED | IN_UPDATE);
fs = ip->i_e2fs;
if (error = bread(ip->i_devvp,
fsbtodb(fs, ino_to_fsba(fs, ip->i_number)),