Al Viro
474279dc0f
split __lookup_mnt() in two functions
...
Instead of passing the direction as argument (and checking it on every
step through the hash chain), just have separate __lookup_mnt() and
__lookup_mnt_last(). And use the standard iterators...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:35:00 -04:00
Al Viro
7eb5e88269
uninline destroy_super(), consolidate alloc_super()
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:35:00 -04:00
Al Viro
966c1f75f8
isofs: don't pass dentry to isofs_hash{i,}_common()
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:59 -04:00
Al Viro
719ea2fbb5
new helpers: lock_mount_hash/unlock_mount_hash
...
aka br_write_{lock,unlock} of vfsmount_lock. Inlines in fs/mount.h,
vfsmount_lock extern moved over there as well.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:59 -04:00
Al Viro
aab407fc5c
don't bother with vfsmount_lock in mounts_poll()
...
wake_up_interruptible/poll_wait provide sufficient barriers;
just use ACCESS_ONCE() to fetch ns->event and that's it.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:59 -04:00
Al Viro
aba809cf09
namespace.c: get rid of mnt_ghosts
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:58 -04:00
Al Viro
9559f68915
fold dup_mnt_ns() into its only surviving caller
...
should've been done 6 years ago...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:58 -04:00
Al Viro
f6b742d869
mnt_set_expiry() doesn't need vfsmount_lock
...
->mnt_expire is protected by namespace_sem
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:57 -04:00
Al Viro
22a7919299
finish_automount() doesn't need vfsmount_lock for removal from expiry list
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:57 -04:00
Al Viro
085e83ff0c
fs/namespace.c: bury long-dead define
...
MNT_WRITER_UNDERFLOW_LIMIT has been missed 4 years ago when it became unused.
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:57 -04:00
Al Viro
649a795aff
fold mntfree() into mntput_no_expire()
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:56 -04:00
Al Viro
6339dab869
do_remount(): pull touch_mnt_namespace() up
...
... and don't bother with dropping and regaining vfsmount_lock
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:56 -04:00
Al Viro
aa7a574d0c
dup_mnt_ns(): get rid of pointless grabbing of vfsmount_lock
...
mnt_list is protected by namespace_sem, not vfsmount_lock
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:55 -04:00
Al Viro
44bb4385ce
fs_is_visible only needs namespace_sem held shared
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:55 -04:00
Al Viro
59aa0da8e2
initialize namespace_sem statically
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:54 -04:00
Al Viro
72c2d53192
file->f_op is never NULL...
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:54 -04:00
Al Viro
22bd002ee7
rtl8188eu: remove dead code
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:54 -04:00
Al Viro
79b185dd1a
dmxdev: get rid of pointless clearing ->f_op
...
nobody else will see that struct file after return from ->release()
anyway; just leave ->f_op as is and let __fput() do that fops_put().
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:53 -04:00
Al Viro
e84f9e57b9
consolidate the reassignments of ->f_op in ->open() instances
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:53 -04:00
Al Viro
7b00ed6fe6
put_mnt_ns(): use drop_collected_mounts()
...
... rather than open-coding it
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:52 -04:00
Al Viro
84eb3532b5
ncpfs: switch to %p[dD]
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:52 -04:00
Al Viro
4cb2a01d8c
ubifs: switch to %pd
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:51 -04:00
Al Viro
1e903edadf
sunrpc: switch to %pd
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:51 -04:00
Al Viro
a6a9f18f0a
nfsd: switch to %p[dD]
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:51 -04:00
Al Viro
6de1472f1a
nfs: use %p[dD] instead of open-coded (and often racy) equivalents
...
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2013-10-24 23:34:50 -04:00