On Mon, Jan 23, 2017 at 07:21:56AM -0500, Jeff Layton wrote: > So if you only have ATTR_SIZE then you're going to end up having to do > another notify_change to update the ctime? Can we get away with just > calling vfs_truncate when only ATTR_SIZE is set and skipping the > notify_change to update the ctime? We probably could, but there are some fine details there: For truncate(2) Posix require us to not updated the time stamps when truncating and already zero length file to 0, but for ftruncate(2) and O_TRUNC we do have to update the mtime and ctime. The Linux VFS communicates that difference by not setting ATTR_CTIME and ATTR_MTIME in ia_valid for truncate(2), but expecting the fs to update them anyway. (another reason for a proper truncate method to make this explicit). I'll need to look at the exact NFS semantics in that area, but after a bit of research I can probably come up with something that will work. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html