[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+icZUWXjyZXMUzzKumG0GfHRzpYOXHJFSzvsPwE24B0G_wu=A@mail.gmail.com>
Date: Wed, 27 Oct 2021 23:39:42 +0200
From: Sedat Dilek <sedat.dilek@...il.com>
To: Lukas Czerner <lczerner@...hat.com>
Cc: linux-ext4@...r.kernel.org, tytso@....edu,
linux-fsdevel@...r.kernel.org,
Carlos Maiolino <cmaiolino@...hat.com>
Subject: Re: [PATCH v4 00/13] ext4: new mount API conversion
On Wed, Oct 27, 2021 at 11:27 PM Lukas Czerner <lczerner@...hat.com> wrote:
>
> 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. You can check it out on github as well.
>
> https://github.com/lczerner/xfstests/tree/ext4_mount_test
>
> 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@...hat.com>
> Reviewed-by: Carlos Maiolino <cmaiolino@...hat.com>
> ---
Is this the Git branch to pull from...?
https://github.com/lczerner/linux/tree/ext4_mount_api_rebase
https://github.com/lczerner/linux/commits/ext4_mount_api_rebase
Any other requirements or recommendations other than "ext4: ext4 mount
sanity test" (xfstests)?
Thanks.
- Sedat -
> v3 -> v4: Fix some typos, print exact quotafile type in log messages.
> Remove explicit "Ext4:" from some log messages
> 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 | 1848 +++++++++++++++++++++++--------------
> fs/fs_parser.c | 31 +-
> include/linux/fs_parser.h | 2 +-
> 3 files changed, 1189 insertions(+), 692 deletions(-)
>
> --
> 2.31.1
>
Powered by blists - more mailing lists