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@