diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-09-21 09:14:16 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2023-09-21 09:45:15 +0200 |
commit | 2cc1f498623311cb7d1608115b68793bfc505638 (patch) | |
tree | 9b9f7b86fd99be831d16c44a61cde1307eb6ee93 | |
parent | 5452d1be676cb0fb9dc417f7b48a917c9d020420 (diff) |
Revert "configfs: fix a race in configfs_lookup()"
This reverts commit c709c7ca020a52ef6530733a9a5f014bd6b71937 which is
commit c42dd069be8dfc9b2239a5c89e73bbd08ab35de0 upstream.
It was backported incorrectly, and will come back later in a way that
actually works.
Cc: Sishuai Gong <sishuai@purdue.edu>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Kyle Zeng <zengyhkyle@gmail.com>
Reported-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/27f978f3-11ca-6054-5160-ab66d4c918bc@roeck-us.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | fs/configfs/dir.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/configfs/dir.c b/fs/configfs/dir.c index 0b7e9ab517d5..12388ed4faa5 100644 --- a/fs/configfs/dir.c +++ b/fs/configfs/dir.c @@ -479,7 +479,6 @@ static struct dentry * configfs_lookup(struct inode *dir, if (!configfs_dirent_is_ready(parent_sd)) goto out; - spin_lock(&configfs_dirent_lock); list_for_each_entry(sd, &parent_sd->s_children, s_sibling) { if (sd->s_type & CONFIGFS_NOT_PINNED) { const unsigned char * name = configfs_get_name(sd); @@ -492,7 +491,6 @@ static struct dentry * configfs_lookup(struct inode *dir, break; } } - spin_unlock(&configfs_dirent_lock); if (!found) { /* |