patch-2.1.131 linux/fs/smbfs/dir.c

Next file: linux/fs/sysv/namei.c
Previous file: linux/fs/qnx4/namei.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.130/linux/fs/smbfs/dir.c linux/fs/smbfs/dir.c
@@ -479,22 +479,15 @@
 	smb_close(inode);
 
 	/*
-	 * Prune any child dentries so this dentry can become negative.
+	 * Check that nobody else is using the directory..
 	 */
-	if (dentry->d_count > 1) {
-		shrink_dcache_parent(dentry);
-		error = -EBUSY;
-		if (dentry->d_count > 1)
-			goto out;
- 	}
+	error = -EBUSY;
+	if (!list_empty(&dentry->d_hash))
+		goto out;
 
 	smb_invalid_dir_cache(dir);
 	error = smb_proc_rmdir(dentry);
-	if (!error)
-	{
-		smb_renew_times(dentry);
-		d_delete(dentry);
-	}
+
 out:
 	return error;
 }

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov