From: Jeffle Xu <jefflexu@linux.alibaba.com> To: dhowells@redhat.com, linux-cachefs@redhat.com, xiang@kernel.org, chao@kernel.org, linux-erofs@lists.ozlabs.org Cc: linux-fsdevel@vger.kernel.org, joseph.qi@linux.alibaba.com, bo.liu@linux.alibaba.com, tao.peng@linux.alibaba.com, gerry@linux.alibaba.com, eguan@linux.alibaba.com, linux-kernel@vger.kernel.org Subject: [PATCH v2 09/20] erofs: add mode checking helper Date: Tue, 18 Jan 2022 21:12:05 +0800 [thread overview] Message-ID: <20220118131216.85338-10-jefflexu@linux.alibaba.com> (raw) In-Reply-To: <20220118131216.85338-1-jefflexu@linux.alibaba.com> 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 f9f94d63d40f..2b9337d385ce 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, -- 2.27.0
WARNING: multiple messages have this Message-ID (diff)
From: Jeffle Xu <jefflexu@linux.alibaba.com> To: dhowells@redhat.com, linux-cachefs@redhat.com, xiang@kernel.org, chao@kernel.org, linux-erofs@lists.ozlabs.org Cc: linux-kernel@vger.kernel.org, joseph.qi@linux.alibaba.com, linux-fsdevel@vger.kernel.org, gerry@linux.alibaba.com Subject: [PATCH v2 09/20] erofs: add mode checking helper Date: Tue, 18 Jan 2022 21:12:05 +0800 [thread overview] Message-ID: <20220118131216.85338-10-jefflexu@linux.alibaba.com> (raw) In-Reply-To: <20220118131216.85338-1-jefflexu@linux.alibaba.com> 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 f9f94d63d40f..2b9337d385ce 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, -- 2.27.0
next prev parent reply other threads:[~2022-01-18 13:13 UTC|newest] Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-01-18 13:11 [PATCH v2 00/20] fscache,erofs: fscache-based demand-read semantics Jeffle Xu 2022-01-18 13:11 ` Jeffle Xu 2022-01-18 13:11 ` [PATCH v2 01/20] netfs: make @file optional in netfs_alloc_read_request() Jeffle Xu 2022-01-18 13:11 ` Jeffle Xu 2022-01-18 13:11 ` [PATCH v2 02/20] netfs,cachefiles: manage logical/physical offset separately Jeffle Xu 2022-01-18 13:11 ` [PATCH v2 02/20] netfs, cachefiles: " Jeffle Xu 2022-01-18 13:11 ` [PATCH v2 03/20] netfs,fscache: support on-demand reading Jeffle Xu 2022-01-18 13:11 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 04/20] cachefiles: extract generic daemon write function Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 05/20] cachefiles: detect backing file size in on-demand read mode Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 06/20] cachefiles: introduce new devnode for " Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 07/20] erofs: use meta buffers for erofs_read_superblock() Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 08/20] erofs: export erofs_map_blocks() Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu [this message] 2022-01-18 13:12 ` [PATCH v2 09/20] erofs: add mode checking helper Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 10/20] erofs: register global fscache volume Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 11/20] erofs: add cookie context helper functions Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 12/20] erofs: add anonymous inode managing page cache of blob file Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 13/20] erofs: register cookie context for bootstrap blob Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 14/20] erofs: implement fscache-based metadata read Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 15/20] erofs: implement fscache-based data read for non-inline layout Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 16/20] erofs: implement fscache-based data read for inline layout Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 17/20] erofs: register cookie context for data blobs Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 18/20] erofs: implement fscache-based data read " Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 19/20] erofs: add 'uuid' mount option Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-18 13:12 ` [PATCH v2 20/20] erofs: support on-demand reading Jeffle Xu 2022-01-18 13:12 ` Jeffle Xu 2022-01-19 6:40 ` [Linux-cachefs] [PATCH v2 00/20] fscache, erofs: fscache-based demand-read semantics Gao Xiang 2022-01-19 6:40 ` Gao Xiang 2022-01-21 10:57 ` JeffleXu 2022-01-21 10:57 ` JeffleXu 2022-01-24 17:23 ` [PATCH v2 00/20] fscache,erofs: " David Howells 2022-01-24 17:23 ` [PATCH v2 00/20] fscache, erofs: " David Howells 2022-01-25 1:53 ` [PATCH v2 00/20] fscache,erofs: " JeffleXu 2022-01-25 1:53 ` JeffleXu 2022-01-25 2:55 ` JeffleXu 2022-01-25 2:55 ` JeffleXu 2022-01-25 15:34 ` [PATCH v2 11/20] erofs: add cookie context helper functions David Howells 2022-01-25 15:34 ` David Howells 2022-01-26 6:45 ` JeffleXu 2022-01-26 6:45 ` JeffleXu 2022-01-25 16:15 ` [PATCH v2 00/20] fscache, erofs: fscache-based demand-read semantics David Howells 2022-01-25 16:15 ` [PATCH v2 00/20] fscache,erofs: " David Howells 2022-01-26 6:10 ` JeffleXu 2022-01-26 6:10 ` JeffleXu 2022-01-26 8:51 ` David Howells 2022-01-26 8:51 ` [PATCH v2 00/20] fscache, erofs: " David Howells 2022-01-27 7:07 ` [PATCH v2 00/20] fscache,erofs: " JeffleXu 2022-01-27 7:07 ` JeffleXu 2022-01-25 20:27 ` David Howells 2022-01-25 20:27 ` [PATCH v2 00/20] fscache, erofs: " David Howells 2022-01-26 5:26 ` [PATCH v2 00/20] fscache,erofs: " JeffleXu 2022-01-26 5:26 ` JeffleXu
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220118131216.85338-10-jefflexu@linux.alibaba.com \ --to=jefflexu@linux.alibaba.com \ --cc=bo.liu@linux.alibaba.com \ --cc=chao@kernel.org \ --cc=dhowells@redhat.com \ --cc=eguan@linux.alibaba.com \ --cc=gerry@linux.alibaba.com \ --cc=joseph.qi@linux.alibaba.com \ --cc=linux-cachefs@redhat.com \ --cc=linux-erofs@lists.ozlabs.org \ --cc=linux-fsdevel@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=tao.peng@linux.alibaba.com \ --cc=xiang@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.