Patch "NFS: Ensure the server has an up to date ctime before hardlinking" has been added to the 5.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    NFS: Ensure the server has an up to date ctime before hardlinking

to the 5.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     nfs-ensure-the-server-has-an-up-to-date-ctime-before.patch
and it can be found in the queue-5.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 1fa180e912864b7ceeb1699629973a8185802ca6
Author: Trond Myklebust <trond.myklebust@xxxxxxxxxxxxxxx>
Date:   Wed Dec 15 16:38:15 2021 -0500

    NFS: Ensure the server has an up to date ctime before hardlinking
    
    [ 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@xxxxxxxxxxxxxxx>
    Signed-off-by: Anna Schumaker <Anna.Schumaker@xxxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index e7c0790308fe0..c02bd12019c89 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -2035,6 +2035,8 @@ nfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry)
 
 	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);



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux