[PATCH v6 10/22] erofs: add mode checking helper
Gao Xiang
hsiangkao at linux.alibaba.com
Mon Mar 28 13:42:42 AEDT 2022
On Fri, Mar 25, 2022 at 08:22: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 at 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..1486e2573667 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_is_nodev_mode(struct super_block *sb)
I've seen a lot of such
+ if (IS_ENABLED(CONFIG_EROFS_FS_ONDEMAND) &&
+ erofs_is_nodev_mode(sb)) {
usages in the followup patches, which makes me wonder if the configuration
can be checked in the helper as well. Also maybe rename it as
erofs_is_fscache_mode()?
Thanks,
Gao Xiang
> +{
> + return !sb->s_bdev;
> +}
> +
> enum {
> EROFS_ZIP_CACHE_DISABLED,
> EROFS_ZIP_CACHE_READAHEAD,
> --
> 2.27.0
More information about the Linux-erofs
mailing list