lkml.org 
[lkml]   [2022]   [Jan]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 47/64] NFS: Ensure the server has an up to date ctime before hardlinking
    Date
    From: Trond Myklebust <trond.myklebust@hammerspace.com>

    [ Upstream commit 204975036b34f55237bc44c8a302a88468ef21b5 ]

    Creating a hard link is required by POSIX to update the file ctime, so
    ensure that the file data is synced to disk so that we don't clobber the
    updated ctime by writing back after creating the hard link.

    Fixes: 9f7682728728 ("NFS: Move the delegation return down into nfs4_proc_link()")
    Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
    Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    fs/nfs/dir.c | 2 ++
    1 file changed, 2 insertions(+)

    --- a/fs/nfs/dir.c
    +++ b/fs/nfs/dir.c
    @@ -2053,6 +2053,8 @@ nfs_link(struct dentry *old_dentry, stru

    trace_nfs_link_enter(inode, dir, dentry);
    d_drop(dentry);
    + if (S_ISREG(inode->i_mode))
    + nfs_sync_inode(inode);
    error = NFS_PROTO(dir)->link(inode, dir, &dentry->d_name);
    if (error == 0) {
    ihold(inode);

    \
     
     \ /
      Last update: 2022-01-31 12:02    [W:2.355 / U:0.512 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site