1
linux/fs/ext3
Jan Blunck db71922217 BKL: Explicitly add BKL around get_sb/fill_super
This patch is a preparation necessary to remove the BKL from do_new_mount().
It explicitly adds calls to lock_kernel()/unlock_kernel() around
get_sb/fill_super operations for filesystems that still uses the BKL.

I've read through all the code formerly covered by the BKL inside
do_kern_mount() and have satisfied myself that it doesn't need the BKL
any more.

do_kern_mount() is already called without the BKL when mounting the rootfs
and in nfsctl. do_kern_mount() calls vfs_kern_mount(), which is called
from various places without BKL: simple_pin_fs(), nfs_do_clone_mount()
through nfs_follow_mountpoint(), afs_mntpt_do_automount() through
afs_mntpt_follow_link(). Both later functions are actually the filesystems
follow_link inode operation. vfs_kern_mount() is calling the specified
get_sb function and lets the filesystem do its job by calling the given
fill_super function.

Therefore I think it is safe to push down the BKL from the VFS to the
low-level filesystems get_sb/fill_super operation.

[arnd: do not add the BKL to those file systems that already
       don't use it elsewhere]

Signed-off-by: Jan Blunck <jblunck@infradead.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Matthew Wilcox <matthew@wil.cx>
Cc: Christoph Hellwig <hch@infradead.org>
2010-10-04 21:10:10 +02:00
..
acl.c ext3: update ctime when changing the file's permission by setfacl 2010-06-25 01:20:37 +02:00
acl.h
balloc.c ext3: Avoid loading bitmaps for full groups during block allocation 2010-05-21 19:30:36 +02:00
bitmap.c
dir.c ext3 uses rb_node = NULL; to zero rb_root. 2010-05-27 17:39:36 +02:00
ext3_jbd.c
file.c
fsync.c drop unused dentry argument to ->fsync 2010-05-27 22:05:02 -04:00
hash.c
ialloc.c convert ext3 to ->evict_inode() 2010-08-09 16:48:03 -04:00
inode.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2010-08-10 11:26:52 -07:00
ioctl.c
Kconfig ext3: default to ordered mode 2010-07-23 12:50:55 +02:00
Makefile
namei.c ext3: Fix set but unused variables 2010-07-21 16:01:47 +02:00
namei.h
resize.c ext3: Fix set but unused variables 2010-07-21 16:01:47 +02:00
super.c BKL: Explicitly add BKL around get_sb/fill_super 2010-10-04 21:10:10 +02:00
symlink.c ext3: symlink must be handled via filesystem specific operation 2010-04-12 21:11:39 +02:00
xattr_security.c ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00
xattr_trusted.c ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00
xattr_user.c ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00
xattr.c mbcache: Remove unused features 2010-08-09 16:48:45 -04:00
xattr.h ext3: constify xattr handlers 2010-05-21 18:31:19 -04:00