lkml.org 
[lkml]   [2023]   [Jul]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v2 12/92] exfat: convert to simple_rename_timestamp
    On Wed 05-07-23 15:00:37, Jeff Layton wrote:
    > A rename potentially involves updating 4 different inode timestamps.
    > Convert to the new simple_rename_timestamp helper function.
    >
    > Signed-off-by: Jeff Layton <jlayton@kernel.org>
    > ---
    > fs/exfat/namei.c | 5 ++---
    > 1 file changed, 2 insertions(+), 3 deletions(-)
    >
    > diff --git a/fs/exfat/namei.c b/fs/exfat/namei.c
    > index d9b46fa36bff..e91022ff80ef 100644
    > --- a/fs/exfat/namei.c
    > +++ b/fs/exfat/namei.c
    > @@ -1312,8 +1312,8 @@ static int exfat_rename(struct mnt_idmap *idmap,
    > goto unlock;
    >
    > inode_inc_iversion(new_dir);
    > - new_dir->i_ctime = new_dir->i_mtime = new_dir->i_atime =
    > - EXFAT_I(new_dir)->i_crtime = current_time(new_dir);
    > + simple_rename_timestamp(old_dir, old_dentry, new_dir, new_dentry);
    > + EXFAT_I(new_dir)->i_crtime = current_time(new_dir);

    Hum, you loose atime update with this. Not that it would make sense to have
    it but it would probably deserve a comment in the changelog.

    Also why you use current_time(new_dir) here instead of say inode->i_ctime?

    > exfat_truncate_atime(&new_dir->i_atime);
    > if (IS_DIRSYNC(new_dir))
    > exfat_sync_inode(new_dir);
    > @@ -1336,7 +1336,6 @@ static int exfat_rename(struct mnt_idmap *idmap,
    > }
    >
    > inode_inc_iversion(old_dir);
    > - old_dir->i_ctime = old_dir->i_mtime = current_time(old_dir);
    > if (IS_DIRSYNC(old_dir))
    > exfat_sync_inode(old_dir);
    > else

    Also there is:

    new_inode->i_ctime = EXFAT_I(new_inode)->i_crtime =
    current_time(new_inode);

    in exfat_rename() from which you can remove the ctime update?

    Honza
    --
    Jan Kara <jack@suse.com>
    SUSE Labs, CR

    \
     
     \ /
      Last update: 2023-07-06 12:39    [W:4.033 / U:0.608 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site