]> git.baikalelectronics.ru Git - kernel.git/commit
isofs: Remove global fs lock
authorJan Kara <jack@suse.cz>
Thu, 21 Jul 2011 20:22:25 +0000 (22:22 +0200)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 22 Jul 2011 23:42:12 +0000 (19:42 -0400)
commit012954195412e91178252a206b4bddcb2b151204
treeb030270648c2a2aca7c5417e2ae0436ec7d0a31c
parent95a856b14ed81e18d614f75177e0e0ed77352268
isofs: Remove global fs lock

sbi->s_mutex isn't needed for isofs at all so we can just remove it. Generally,
since isofs is always mounted read-only, filesystem structure cannot change
under us.  So buffer_head contents stays constant after it's filled in. That
leaves us with possible changes of global data structures. Superblock changes
only during filesystem mount (even remount does not change it), inodes are only
filled in during reading from disk. So there are no changes of these structures
to bother about.

Arguments why sbi->s_mutex can be removed at each place:
isofs_readdir: Accesses sb, inode, filp, local variables => s_mutex not needed
isofs_lookup: Protected by directory's i_mutex. Accesses sb, inode, dentry,
  local variables => s_mutex not needed
rock_ridge_symlink_readpage: Protected by page lock. Accesses sb, inode,
  local variables => s_mutex not needed.

Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/isofs/dir.c
fs/isofs/inode.c
fs/isofs/isofs.h
fs/isofs/namei.c
fs/isofs/rock.c