From: Lukas Czerner <lczerner@redhat.com>
To: linux-ext4@vger.kernel.org, tytso@mit.edu
Cc: linux-fsdevel@vger.kernel.org
Subject: [PATCH v3 00/13] ext4: new mount API conversion
Date: Thu, 21 Oct 2021 13:44:55 +0200 [thread overview]
Message-ID: <20211021114508.21407-1-lczerner@redhat.com> (raw)
After some time I am once again resurrecting the patchset to convert the
ext4 to use the new mount API
(Documentation/filesystems/mount_api.txt).
The series can be applied on top of the current mainline tree and the work
is based on the patches from David Howells (thank you David). It was built
and tested with xfstests and a new ext4 mount options regression test that
was sent to the fstests list.
https://www.spinics.net/lists/fstests/msg17756.html
Here is a high level description of the patchset
1. Prepare the ext4 mount parameters required by the new mount API and use
it for parsing, while still using the old API to get the options
string.
fs_parse: allow parameter value to be empty
ext4: Add fs parameter specifications for mount options
ext4: move option validation to a separate function
ext4: Change handle_mount_opt() to use fs_parameter
2. Remove the use of ext4 super block from all the parsing code, because
with the new mount API the parsing is going to be done before we even
get the super block.
ext4: Allow sb to be NULL in ext4_msg()
ext4: move quota configuration out of handle_mount_opt()
ext4: check ext2/3 compatibility outside handle_mount_opt()
ext4: get rid of super block and sbi from handle_mount_ops()
3. Actually finish the separation of the parsing and super block setup
into distinct steps. This is where the new ext4_fill_super() and
ext4_remount() functions are created temporarily before the actual
transition to the new API.
ext4: Completely separate options parsing and sb setup
4. Make some last preparations and actually switch the ext4 to use the
new mount API.
ext4: clean up return values in handle_mount_opt()
ext4: change token2str() to use ext4_param_specs
ext4: switch to the new mount api
5. Cleanup the old unused structures and rearrange the parsing function.
ext4: Remove unused match_table_t tokens
There is still a potential to do some cleanups and perhaps refactoring
such as using the fsparam_flag_no to remove the separate negative
options for example. However that can be done later after the conversion
to the new mount API which is the main purpose of the patchset.
Signed-off-by: Lukas Czerner <lczerner@redhat.com>
---
V2 -> V3: Rebase to the newer kernel, including new mount options.
V1 -> V2: Rebase to the newer kernel
Lukas Czerner (13):
fs_parse: allow parameter value to be empty
ext4: Add fs parameter specifications for mount options
ext4: move option validation to a separate function
ext4: Change handle_mount_opt() to use fs_parameter
ext4: Allow sb to be NULL in ext4_msg()
ext4: move quota configuration out of handle_mount_opt()
ext4: check ext2/3 compatibility outside handle_mount_opt()
ext4: get rid of super block and sbi from handle_mount_ops()
ext4: Completely separate options parsing and sb setup
ext4: clean up return values in handle_mount_opt()
ext4: change token2str() to use ext4_param_specs
ext4: switch to the new mount api
ext4: Remove unused match_table_t tokens
fs/ext4/super.c | 1846 +++++++++++++++++++++++--------------
fs/fs_parser.c | 31 +-
include/linux/fs_parser.h | 2 +-
3 files changed, 1187 insertions(+), 692 deletions(-)
base-commit: d9abdee5fd5abffd0e763e52fbfa3116de167822
--
2.31.1
next reply other threads:[~2021-10-21 11:45 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-21 11:44 Lukas Czerner [this message]
2021-10-21 11:44 ` [PATCH v3 01/13] fs_parse: allow parameter value to be empty Lukas Czerner
2021-10-25 11:12 ` Carlos Maiolino
2021-10-21 11:44 ` [PATCH v3 02/13] ext4: Add fs parameter specifications for mount options Lukas Czerner
2021-10-21 11:44 ` [PATCH v3 03/13] ext4: move option validation to a separate function Lukas Czerner
2021-10-21 11:44 ` [PATCH v3 04/13] ext4: Change handle_mount_opt() to use fs_parameter Lukas Czerner
2021-10-21 11:45 ` [PATCH v3 05/13] ext4: Allow sb to be NULL in ext4_msg() Lukas Czerner
2021-10-21 11:45 ` [PATCH v3 06/13] ext4: move quota configuration out of handle_mount_opt() Lukas Czerner
2021-10-21 19:57 ` kernel test robot
2021-10-21 11:45 ` [PATCH v3 07/13] ext4: check ext2/3 compatibility outside handle_mount_opt() Lukas Czerner
2021-10-21 11:45 ` [PATCH v3 08/13] ext4: get rid of super block and sbi from handle_mount_ops() Lukas Czerner
2021-10-27 1:32 ` kernel test robot
2021-10-21 11:45 ` [PATCH v3 09/13] ext4: Completely separate options parsing and sb setup Lukas Czerner
2021-10-26 11:41 ` Carlos Maiolino
2021-10-21 11:45 ` [PATCH v3 10/13] ext4: clean up return values in handle_mount_opt() Lukas Czerner
2021-10-21 11:45 ` [PATCH v3 11/13] ext4: change token2str() to use ext4_param_specs Lukas Czerner
2021-10-26 11:40 ` Carlos Maiolino
2021-10-26 12:09 ` Lukas Czerner
2021-10-27 11:52 ` Lukas Czerner
2021-10-21 11:45 ` [PATCH v3 12/13] ext4: switch to the new mount api Lukas Czerner
2022-01-13 11:29 ` Jon Hunter
2022-01-13 12:08 ` Lukas Czerner
2022-01-13 15:06 ` Jon Hunter
2022-01-13 16:10 ` Jon Hunter
2022-01-14 9:40 ` Jon Hunter
2021-10-21 11:45 ` [PATCH v3 13/13] ext4: Remove unused match_table_t tokens Lukas Czerner
2021-10-26 11:39 ` [PATCH v3 00/13] ext4: new mount API conversion Carlos Maiolino
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=20211021114508.21407-1-lczerner@redhat.com \
--to=lczerner@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=tytso@mit.edu \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).