VisionFive2 Linux kernel

StarFive Tech Linux Kernel for VisionFive (JH7110) boards (mirror)

More than 9999 Commits   32 Branches   54 Tags
author: Al Viro <viro@zeniv.linux.org.uk> 2019-09-17 23:28:08 -0400 committer: Al Viro <viro@zeniv.linux.org.uk> 2019-09-17 23:28:08 -0400 commit: c3aed16680cd0c0e5abf1bfc0dc1338e6a41b29f parent: 41ca19740a0e772eff1f9ba67293649feb836662
Commit Summary:
autofs_dir_rmdir(): check ino->count for deciding whether it's empty...
Diffstat:
1 file changed, 2 insertions, 4 deletions
diff --git a/fs/autofs/root.c b/fs/autofs/root.c
index 7806b110e79d..ae1d112b6f64 100644
--- a/fs/autofs/root.c
+++ b/fs/autofs/root.c
@@ -691,11 +691,10 @@ static int autofs_dir_rmdir(struct inode *dir, struct dentry *dentry)
 	if (sbi->flags & AUTOFS_SBI_CATATONIC)
 		return -EACCES;
 
-	spin_lock(&sbi->lookup_lock);
-	if (!simple_empty(dentry)) {
-		spin_unlock(&sbi->lookup_lock);
+	if (atomic_read(&ino->count) != 1)
 		return -ENOTEMPTY;
-	}
+
+	spin_lock(&sbi->lookup_lock);
 	__autofs_add_expiring(dentry);
 	d_drop(dentry);
 	spin_unlock(&sbi->lookup_lock);