Whamcloud - gitweb
fuse2fs: update new child timestamps during mkdir/symlink
authorDarrick J. Wong <djwong@kernel.org>
Thu, 24 Apr 2025 21:43:54 +0000 (14:43 -0700)
committerTheodore Ts'o <tytso@mit.edu>
Wed, 21 May 2025 14:25:07 +0000 (10:25 -0400)
These two file creation functions fail to update the timestamps of the
new child file, unlike the others (mknod/creat).  Fix that.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Link: https://lore.kernel.org/r/174553065141.1160461.7342685341356901806.stgit@frogsfrogsfrogs
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
misc/fuse2fs.c

index 6612c5a..c85b2a0 100644 (file)
@@ -1016,6 +1016,7 @@ static int op_mkdir(const char *path, mode_t mode)
        inode.i_mode = LINUX_S_IFDIR | (mode & ~S_ISUID) |
                       parent_sgid;
        inode.i_generation = ff->next_generation++;
+       init_times(&inode);
 
        err = ext2fs_write_inode_full(fs, child, (struct ext2_inode *)&inode,
                                      sizeof(inode));
@@ -1390,6 +1391,7 @@ static int op_symlink(const char *src, const char *dest)
        inode.i_gid = ctxt->gid;
        ext2fs_set_i_gid_high(inode, ctxt->gid >> 16);
        inode.i_generation = ff->next_generation++;
+       init_times(&inode);
 
        err = ext2fs_write_inode_full(fs, child, (struct ext2_inode *)&inode,
                                      sizeof(inode));