NFS: Ensure that nfs_link() returns a hashed dentry

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index c2207e3..d352509 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -1506,10 +1506,11 @@
 		dentry->d_parent->d_name.name, dentry->d_name.name);
 
 	lock_kernel();
+	d_drop(dentry);
 	error = NFS_PROTO(dir)->link(inode, dir, &dentry->d_name);
 	if (error == 0) {
 		atomic_inc(&inode->i_count);
-		d_instantiate(dentry, inode);
+		d_add(dentry, inode);
 	}
 	unlock_kernel();
 	return error;