summaryrefslogtreecommitdiffstats
path: root/fs/namespace.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2013-09-17 03:37:36 +0200
committerAl Viro <viro@zeniv.linux.org.uk>2013-10-25 05:34:55 +0200
commit44bb4385ce1cfb231d37cbc7bb6faf70f98b7b17 (patch)
treee621c6e441a714836f0ccd2f98ccc461669ba0bd /fs/namespace.c
parentinitialize namespace_sem statically (diff)
downloadlinux-44bb4385ce1cfb231d37cbc7bb6faf70f98b7b17.tar.xz
linux-44bb4385ce1cfb231d37cbc7bb6faf70f98b7b17.zip
fs_is_visible only needs namespace_sem held shared
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/namespace.c')
-rw-r--r--fs/namespace.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/namespace.c b/fs/namespace.c
index 827aea4c3242..0e54ad6ccd8a 100644
--- a/fs/namespace.c
+++ b/fs/namespace.c
@@ -2869,7 +2869,7 @@ bool fs_fully_visible(struct file_system_type *type)
if (unlikely(!ns))
return false;
- namespace_lock();
+ down_read(&namespace_sem);
list_for_each_entry(mnt, &ns->list, mnt_list) {
struct mount *child;
if (mnt->mnt.mnt_sb->s_type != type)
@@ -2890,7 +2890,7 @@ bool fs_fully_visible(struct file_system_type *type)
next: ;
}
found:
- namespace_unlock();
+ up_read(&namespace_sem);
return visible;
}