CVSROOT:        /cvs
Module name:    src
Changes by:     [email protected]        2014/01/25 16:31:13

Modified files:
        sys/ufs/ext2fs : ext2fs_extern.h ext2fs_inode.c 
                         ext2fs_readwrite.c ext2fs_vnops.c 
        sys/ufs/ffs    : ffs_alloc.c ffs_balloc.c ffs_extern.h 
                         ffs_inode.c 
        sys/ufs/ufs    : inode.h ufs_extern.h ufs_vnops.c 

Log message:
ufs_setattr() was assuming that the flag bits that indicate
atime/mtime/ctime need to be updated weren't already set.  When
they are, the code will end up treating the VNOVAL value from the
VFS layer as a time_t.  Port the fix from FreeBSD: the critical bit
is to process the existing flag values before possibly setting them
again in ufs_setattr().  This diff pulls in a larger change from
FreeBSD to replace the macro ITIMES() with a function ufs_itimes()
and to remove the atime and mtime arguments from ffs_update(): only
ufs_setattr() used them so it makes more sense to just do the those
bits directly there.

tweaks and ok tedu@ matthew@

Reply via email to