diff options
author | Max Reitz <mreitz@redhat.com> | 2020-09-09 17:52:17 +0200 |
---|---|---|
committer | Miklos Szeredi <mszeredi@redhat.com> | 2020-09-18 15:17:41 +0200 |
commit | 1866d779d5d2abae59d304e809600ca3ca8d0071 (patch) | |
tree | f6ab5f44aeefd72c9f37e477158ba409a3c35231 /fs/fuse/fuse_i.h | |
parent | fcee216beb9c15c3e1466bb76575358415687c55 (diff) | |
download | linux-rpi-1866d779d5d2abae59d304e809600ca3ca8d0071.tar.gz linux-rpi-1866d779d5d2abae59d304e809600ca3ca8d0071.tar.bz2 linux-rpi-1866d779d5d2abae59d304e809600ca3ca8d0071.zip |
fuse: Allow fuse_fill_super_common() for submounts
Submounts have their own superblock, which needs to be initialized.
However, they do not have a fuse_fs_context associated with them, and
the root node's attributes should be taken from the mountpoint's node.
Extend fuse_fill_super_common() to work for submounts by making the @ctx
parameter optional, and by adding a @submount_finode parameter.
(There is a plain "unsigned" in an existing code block that is being
indented by this commit. Extend it to "unsigned int" so checkpatch does
not complain.)
Signed-off-by: Max Reitz <mreitz@redhat.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/fuse/fuse_i.h')
-rw-r--r-- | fs/fuse/fuse_i.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/fuse/fuse_i.h b/fs/fuse/fuse_i.h index 95b81a87941d..d469905166ab 100644 --- a/fs/fuse/fuse_i.h +++ b/fs/fuse/fuse_i.h @@ -1044,6 +1044,14 @@ void fuse_send_init(struct fuse_mount *fm); */ int fuse_fill_super_common(struct super_block *sb, struct fuse_fs_context *ctx); +/* + * Fill in superblock for submounts + * @sb: partially-initialized superblock to fill in + * @parent_fi: The fuse_inode of the parent filesystem where this submount is + * mounted + */ +int fuse_fill_super_submount(struct super_block *sb, + struct fuse_inode *parent_fi); /* * Remove the mount from the connection |