On Sun, Jan 26, 2014 at 12:31 PM, Philip Guenther <[email protected]> wrote: > 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@
Whoops, this was ok deraadt@ too
