Message ID | 20220316131723.111553-11-jefflexu@linux.alibaba.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fscache,erofs: fscache-based on-demand read semantics | expand |
On Wed, Mar 16, 2022 at 09:17:11PM +0800, Jeffle Xu wrote: > Until then erofs is exactly blockdev based filesystem. In other using > scenarios (e.g. container image), erofs needs to run upon files. > > This patch set is going to introduces a new nodev mode, in which erofs > could be mounted from a bootstrap blob file containing complete erofs > image. > > Add a helper checking which mode erofs works in. > > Signed-off-by: Jeffle Xu <jefflexu@linux.alibaba.com> > --- > fs/erofs/internal.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h > index e424293f47a2..f66af9ebda43 100644 > --- a/fs/erofs/internal.h > +++ b/fs/erofs/internal.h > @@ -161,6 +161,11 @@ struct erofs_sb_info { > #define set_opt(opt, option) ((opt)->mount_opt |= EROFS_MOUNT_##option) > #define test_opt(opt, option) ((opt)->mount_opt & EROFS_MOUNT_##option) > > +static inline bool erofs_bdev_mode(struct super_block *sb) How about renaming it as erofs_is_nodev_mode()? Thanks, Gao Xiang > +{ > + return sb->s_bdev; > +} > + > enum { > EROFS_ZIP_CACHE_DISABLED, > EROFS_ZIP_CACHE_READAHEAD, > -- > 2.27.0 > > -- > Linux-cachefs mailing list > Linux-cachefs@redhat.com > https://listman.redhat.com/mailman/listinfo/linux-cachefs
On 3/17/22 1:36 PM, Gao Xiang wrote: > On Wed, Mar 16, 2022 at 09:17:11PM +0800, Jeffle Xu wrote: >> Until then erofs is exactly blockdev based filesystem. In other using >> scenarios (e.g. container image), erofs needs to run upon files. >> >> This patch set is going to introduces a new nodev mode, in which erofs >> could be mounted from a bootstrap blob file containing complete erofs >> image. >> >> Add a helper checking which mode erofs works in. >> >> Signed-off-by: Jeffle Xu <jefflexu@linux.alibaba.com> >> --- >> fs/erofs/internal.h | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h >> index e424293f47a2..f66af9ebda43 100644 >> --- a/fs/erofs/internal.h >> +++ b/fs/erofs/internal.h >> @@ -161,6 +161,11 @@ struct erofs_sb_info { >> #define set_opt(opt, option) ((opt)->mount_opt |= EROFS_MOUNT_##option) >> #define test_opt(opt, option) ((opt)->mount_opt & EROFS_MOUNT_##option) >> >> +static inline bool erofs_bdev_mode(struct super_block *sb) > > How about renaming it as erofs_is_nodev_mode()? Sure, will be renamed in the next version.
diff --git a/fs/erofs/internal.h b/fs/erofs/internal.h index e424293f47a2..f66af9ebda43 100644 --- a/fs/erofs/internal.h +++ b/fs/erofs/internal.h @@ -161,6 +161,11 @@ struct erofs_sb_info { #define set_opt(opt, option) ((opt)->mount_opt |= EROFS_MOUNT_##option) #define test_opt(opt, option) ((opt)->mount_opt & EROFS_MOUNT_##option) +static inline bool erofs_bdev_mode(struct super_block *sb) +{ + return sb->s_bdev; +} + enum { EROFS_ZIP_CACHE_DISABLED, EROFS_ZIP_CACHE_READAHEAD,
Until then erofs is exactly blockdev based filesystem. In other using scenarios (e.g. container image), erofs needs to run upon files. This patch set is going to introduces a new nodev mode, in which erofs could be mounted from a bootstrap blob file containing complete erofs image. Add a helper checking which mode erofs works in. Signed-off-by: Jeffle Xu <jefflexu@linux.alibaba.com> --- fs/erofs/internal.h | 5 +++++ 1 file changed, 5 insertions(+)