Commit c23a0bba authored by Al Viro's avatar Al Viro
Browse files

convenience helper: get_tree_single()



counterpart of mount_single(); switch fusectl to it

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 2ac295d4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -346,7 +346,7 @@ static int fuse_ctl_fill_super(struct super_block *sb, struct fs_context *fctx)

static int fuse_ctl_get_tree(struct fs_context *fc)
{
	return vfs_get_super(fc, vfs_get_single_super, fuse_ctl_fill_super);
	return get_tree_single(fc, fuse_ctl_fill_super);
}

static const struct fs_context_operations fuse_ctl_context_ops = {
+8 −0
Original line number Diff line number Diff line
@@ -1206,6 +1206,14 @@ int get_tree_nodev(struct fs_context *fc,
}
EXPORT_SYMBOL(get_tree_nodev);

int get_tree_single(struct fs_context *fc,
		  int (*fill_super)(struct super_block *sb,
				    struct fs_context *fc))
{
	return vfs_get_super(fc, vfs_get_single_super, fill_super);
}
EXPORT_SYMBOL(get_tree_single);

#ifdef CONFIG_BLOCK
static int set_bdev_super(struct super_block *s, void *data)
{
+3 −0
Original line number Diff line number Diff line
@@ -154,6 +154,9 @@ extern int vfs_get_super(struct fs_context *fc,
extern int get_tree_nodev(struct fs_context *fc,
			 int (*fill_super)(struct super_block *sb,
					   struct fs_context *fc));
extern int get_tree_single(struct fs_context *fc,
			 int (*fill_super)(struct super_block *sb,
					   struct fs_context *fc));

extern const struct file_operations fscontext_fops;