Hi all, this series sits on top of the vfs.super branch in the VFS tree and does a few closely related things: 1) it also converts nilfs2 and btrfs to the new scheme where the file system only opens the block devices after we know that a new super_block was allocated. 2) it then makes sure that for all file system openers the super_block is stored in bd_holder, and makes use of that fact in the mark_dead method so that it doesn't have to fall get_super and thus can also work on block devices that sb->s_bdev doesn't point to 3) it then drops the fs-specific holder ops in ext4 and xfs and uses the generic fs_holder_ops there A git tree is available here: git://git.infradead.org/users/hch/misc.git fs-holder-rework Gitweb: http://git.infradead.org/users/hch/misc.git/shortlog/refs/heads/fs-holder-rework Diffstat: fs/btrfs/super.c | 67 ++++++++++++++++--------------------- fs/btrfs/volumes.c | 8 ++-- fs/btrfs/volumes.h | 2 - fs/ext4/super.c | 18 +++------- fs/f2fs/super.c | 7 +-- fs/nilfs2/super.c | 81 ++++++++++++++++----------------------------- fs/super.c | 44 ++++++++++++++++++------ fs/xfs/xfs_super.c | 32 +++++++---------- include/linux/blkdev.h | 2 + include/linux/fs_context.h | 2 + 10 files changed, 126 insertions(+), 137 deletions(-)