]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
NFSv4: The link() operation should return any delegation on the file
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 26 Oct 2009 12:09:46 +0000 (08:09 -0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 10 Nov 2009 00:23:04 +0000 (16:23 -0800)
commit 9a3936aac133037f65124fcb2d676a6c201a90a4 upstream.

Otherwise, we have to wait for the server to recall it.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/nfs/dir.c

index 32062c33c859496198395db435117c7c33105d3d..7cb298525eefd1a5ebcac1870ce08679447a3f2e 100644 (file)
@@ -1536,6 +1536,8 @@ nfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry)
                old_dentry->d_parent->d_name.name, old_dentry->d_name.name,
                dentry->d_parent->d_name.name, dentry->d_name.name);
 
+       nfs_inode_return_delegation(inode);
+
        d_drop(dentry);
        error = NFS_PROTO(dir)->link(inode, dir, &dentry->d_name);
        if (error == 0) {