2022-07-28 02:07:29

by Yang Xu

[permalink] [raw]
Subject: [PATCH v1] ext4: Remove deprecated noacl/nouser_xattr options

These two options should have been removed since 3.5, but none notices it.
Recently, I and Darrick found this. Also, have some discussion for this[1][2][3].

So now, let's remove them.

Link: https://lore.kernel.org/linux-ext4/[email protected]/T/#u[1]
Link: https://lore.kernel.org/linux-ext4/[email protected]/T/#t[2]
Link: https://lore.kernel.org/linux-ext4/[email protected]/T/#t[3]
Signed-off-by: Yang Xu <[email protected]>
---
fs/ext4/super.c | 11 +----------
1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 845f2f8aee5f..1eff864069c1 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -1576,7 +1576,7 @@ enum {
Opt_bsd_df, Opt_minix_df, Opt_grpid, Opt_nogrpid,
Opt_resgid, Opt_resuid, Opt_sb,
Opt_nouid32, Opt_debug, Opt_removed,
- Opt_user_xattr, Opt_nouser_xattr, Opt_acl, Opt_noacl,
+ Opt_user_xattr, Opt_acl,
Opt_auto_da_alloc, Opt_noauto_da_alloc, Opt_noload,
Opt_commit, Opt_min_batch_time, Opt_max_batch_time, Opt_journal_dev,
Opt_journal_path, Opt_journal_checksum, Opt_journal_async_commit,
@@ -1662,9 +1662,7 @@ static const struct fs_parameter_spec ext4_param_specs[] = {
fsparam_flag ("oldalloc", Opt_removed),
fsparam_flag ("orlov", Opt_removed),
fsparam_flag ("user_xattr", Opt_user_xattr),
- fsparam_flag ("nouser_xattr", Opt_nouser_xattr),
fsparam_flag ("acl", Opt_acl),
- fsparam_flag ("noacl", Opt_noacl),
fsparam_flag ("norecovery", Opt_noload),
fsparam_flag ("noload", Opt_noload),
fsparam_flag ("bh", Opt_removed),
@@ -1814,13 +1812,10 @@ static const struct mount_opts {
{Opt_journal_ioprio, 0, MOPT_NO_EXT2},
{Opt_data, 0, MOPT_NO_EXT2},
{Opt_user_xattr, EXT4_MOUNT_XATTR_USER, MOPT_SET},
- {Opt_nouser_xattr, EXT4_MOUNT_XATTR_USER, MOPT_CLEAR},
#ifdef CONFIG_EXT4_FS_POSIX_ACL
{Opt_acl, EXT4_MOUNT_POSIX_ACL, MOPT_SET},
- {Opt_noacl, EXT4_MOUNT_POSIX_ACL, MOPT_CLEAR},
#else
{Opt_acl, 0, MOPT_NOSUPPORT},
- {Opt_noacl, 0, MOPT_NOSUPPORT},
#endif
{Opt_nouid32, EXT4_MOUNT_NO_UID32, MOPT_SET},
{Opt_debug, EXT4_MOUNT_DEBUG, MOPT_SET},
@@ -2120,10 +2115,6 @@ static int ext4_parse_param(struct fs_context *fc, struct fs_parameter *param)
else
return note_qf_name(fc, GRPQUOTA, param);
#endif
- case Opt_noacl:
- case Opt_nouser_xattr:
- ext4_msg(NULL, KERN_WARNING, deprecated_msg, param->key, "3.5");
- break;
case Opt_sb:
if (fc->purpose == FS_CONTEXT_FOR_RECONFIGURE) {
ext4_msg(NULL, KERN_WARNING,
--
2.27.0


2022-07-28 09:36:52

by Jan Kara

[permalink] [raw]
Subject: Re: [PATCH v1] ext4: Remove deprecated noacl/nouser_xattr options

On Thu 28-07-22 11:02:49, Yang Xu wrote:
> These two options should have been removed since 3.5, but none notices it.
> Recently, I and Darrick found this. Also, have some discussion for this[1][2][3].
>
> So now, let's remove them.
>
> Link: https://lore.kernel.org/linux-ext4/[email protected]/T/#u[1]
> Link: https://lore.kernel.org/linux-ext4/[email protected]/T/#t[2]
> Link: https://lore.kernel.org/linux-ext4/[email protected]/T/#t[3]
> Signed-off-by: Yang Xu <[email protected]>

Yeah, long overdue :) Feel free to add:

Reviewed-by: Jan Kara <[email protected]>

Honza

> ---
> fs/ext4/super.c | 11 +----------
> 1 file changed, 1 insertion(+), 10 deletions(-)
>
> diff --git a/fs/ext4/super.c b/fs/ext4/super.c
> index 845f2f8aee5f..1eff864069c1 100644
> --- a/fs/ext4/super.c
> +++ b/fs/ext4/super.c
> @@ -1576,7 +1576,7 @@ enum {
> Opt_bsd_df, Opt_minix_df, Opt_grpid, Opt_nogrpid,
> Opt_resgid, Opt_resuid, Opt_sb,
> Opt_nouid32, Opt_debug, Opt_removed,
> - Opt_user_xattr, Opt_nouser_xattr, Opt_acl, Opt_noacl,
> + Opt_user_xattr, Opt_acl,
> Opt_auto_da_alloc, Opt_noauto_da_alloc, Opt_noload,
> Opt_commit, Opt_min_batch_time, Opt_max_batch_time, Opt_journal_dev,
> Opt_journal_path, Opt_journal_checksum, Opt_journal_async_commit,
> @@ -1662,9 +1662,7 @@ static const struct fs_parameter_spec ext4_param_specs[] = {
> fsparam_flag ("oldalloc", Opt_removed),
> fsparam_flag ("orlov", Opt_removed),
> fsparam_flag ("user_xattr", Opt_user_xattr),
> - fsparam_flag ("nouser_xattr", Opt_nouser_xattr),
> fsparam_flag ("acl", Opt_acl),
> - fsparam_flag ("noacl", Opt_noacl),
> fsparam_flag ("norecovery", Opt_noload),
> fsparam_flag ("noload", Opt_noload),
> fsparam_flag ("bh", Opt_removed),
> @@ -1814,13 +1812,10 @@ static const struct mount_opts {
> {Opt_journal_ioprio, 0, MOPT_NO_EXT2},
> {Opt_data, 0, MOPT_NO_EXT2},
> {Opt_user_xattr, EXT4_MOUNT_XATTR_USER, MOPT_SET},
> - {Opt_nouser_xattr, EXT4_MOUNT_XATTR_USER, MOPT_CLEAR},
> #ifdef CONFIG_EXT4_FS_POSIX_ACL
> {Opt_acl, EXT4_MOUNT_POSIX_ACL, MOPT_SET},
> - {Opt_noacl, EXT4_MOUNT_POSIX_ACL, MOPT_CLEAR},
> #else
> {Opt_acl, 0, MOPT_NOSUPPORT},
> - {Opt_noacl, 0, MOPT_NOSUPPORT},
> #endif
> {Opt_nouid32, EXT4_MOUNT_NO_UID32, MOPT_SET},
> {Opt_debug, EXT4_MOUNT_DEBUG, MOPT_SET},
> @@ -2120,10 +2115,6 @@ static int ext4_parse_param(struct fs_context *fc, struct fs_parameter *param)
> else
> return note_qf_name(fc, GRPQUOTA, param);
> #endif
> - case Opt_noacl:
> - case Opt_nouser_xattr:
> - ext4_msg(NULL, KERN_WARNING, deprecated_msg, param->key, "3.5");
> - break;
> case Opt_sb:
> if (fc->purpose == FS_CONTEXT_FOR_RECONFIGURE) {
> ext4_msg(NULL, KERN_WARNING,
> --
> 2.27.0
>
--
Jan Kara <[email protected]>
SUSE Labs, CR

2022-08-10 08:47:09

by kernel test robot

[permalink] [raw]
Subject: [ext4] a70b1077cd: xfstests.ext4.053.fail



Greeting,

FYI, we noticed the following commit (built with gcc-11):

commit: a70b1077cddc8fff5db1b4ba3ee956e9ecbaf155 ("[PATCH v1] ext4: Remove deprecated noacl/nouser_xattr options")
url: https://github.com/intel-lab-lkp/linux/commits/Yang-Xu/ext4-Remove-deprecated-noacl-nouser_xattr-options/20220728-100353
base: https://git.kernel.org/cgit/linux/kernel/git/tytso/ext4.git dev
patch link: https://lore.kernel.org/linux-ext4/[email protected]

in testcase: xfstests
version: xfstests-x86_64-c1144bf-1_20220804
with following parameters:

disk: 4HDD
fs: ext2
test: ext4-group-02
ucode: 0xf0

test-description: xfstests is a regression test suite for xfs and other files ystems.
test-url: git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git


on test machine: 4 threads Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz with 32G memory

caused below changes (please refer to attached dmesg/kmsg for entire log/backtrace):




If you fix the issue, kindly add following tag
Reported-by: kernel test robot <[email protected]>


ext4/053 [failed, exit status 2]- output mismatch (see /lkp/benchmarks/xfstests/results//ext4/053.out.bad)
--- tests/ext4/053.out 2022-08-08 17:00:46.000000000 +0000
+++ /lkp/benchmarks/xfstests/results//ext4/053.out.bad 2022-08-10 05:05:37.923675798 +0000
@@ -1,2 +1,4 @@
QA output created by 053
Silence is golden.
+mounting ext3 "nouser_xattr" (failed mount) FAILED
+mounting ext4 "nouser_xattr" (failed mount) FAILED
...
(Run 'diff -u /lkp/benchmarks/xfstests/tests/ext4/053.out /lkp/benchmarks/xfstests/results//ext4/053.out.bad' to see the entire diff)



To reproduce:

git clone https://github.com/intel/lkp-tests.git
cd lkp-tests
sudo bin/lkp install job.yaml # job file is attached in this email
bin/lkp split-job --compatible job.yaml # generate the yaml file for lkp run
sudo bin/lkp run generated-yaml-file

# if come across any failure that blocks the test,
# please remove ~/.lkp and /lkp dir to run from a clean state.



--
0-DAY CI Kernel Test Service
https://01.org/lkp



Attachments:
(No filename) (2.19 kB)
config-5.19.0-rc5-00010-ga70b1077cddc (170.05 kB)
job-script (5.83 kB)
dmesg.xz (33.93 kB)
xfstests (2.66 kB)
job.yaml (4.67 kB)
reproduce (878.00 B)
Download all attachments