[PATCH v2 5/6] fs/ntfs3: Add iocharset= mount option as alias for nls=

Kari Argillander
2021-08-19T00:27:17Z

Other fs drivers are using iocharset= mount option for specifying charset.
So add it also for ntfs3 and mark old nls= mount option as deprecated.

Signed-off-by: Kari Argillander <kari.argillander@gmail.com>
---
Documentation/filesystems/ntfs3.rst | 4 ++--
fs/ntfs3/super.c | 12 ++++++++----
2 files changed, 10 insertions(+), 6 deletions(-)

diff --git a/Documentation/filesystems/ntfs3.rst b/Documentation/filesystems/ntfs3.rst
index af7158de6fde..ded706474825 100644
--- a/Documentation/filesystems/ntfs3.rst
+++ b/Documentation/filesystems/ntfs3.rst
@@ -32,12 +32,12 @@ generic ones.

===============================================================================

-nls=name This option informs the driver how to interpret path
+iocharset=name This option informs the driver how to interpret path
strings and translate them to Unicode and back. If
this option is not set, the default codepage will be
used (CONFIG_NLS_DEFAULT).
Examples:
- 'nls=utf8'
+ 'iocharset=utf8'

uid=
gid=
diff --git a/fs/ntfs3/super.c b/fs/ntfs3/super.c
index 8e86e1956486..c3c07c181f15 100644
--- a/fs/ntfs3/super.c
+++ b/fs/ntfs3/super.c
@@ -240,7 +240,7 @@ enum Opt {
Opt_nohidden,
Opt_showmeta,
Opt_acl,
- Opt_nls,
+ Opt_iocharset,
Opt_prealloc,
Opt_no_acs_rules,
Opt_err,
@@ -259,9 +259,13 @@ static const struct fs_parameter_spec ntfs_fs_parameters[] = {
fsparam_flag_no("hidden", Opt_nohidden),
fsparam_flag_no("acl", Opt_acl),
fsparam_flag_no("showmeta", Opt_showmeta),
- fsparam_string("nls", Opt_nls),
fsparam_flag_no("prealloc", Opt_prealloc),
fsparam_flag("no_acs_rules", Opt_no_acs_rules),
+ fsparam_string("iocharset", Opt_iocharset),
+
+ __fsparam(fs_param_is_string,
+ "nls", Opt_iocharset,
+ fs_param_deprecated, NULL),
{}
};

@@ -332,7 +336,7 @@ static int ntfs_fs_parse_param(struct fs_context *fc,
case Opt_showmeta:
opts->showmeta = result.negated ? 0 : 1;
break;
- case Opt_nls:
+ case Opt_iocharset:
opts->nls_name = param->string;
param->string = NULL;
break;
@@ -519,7 +523,7 @@ static int ntfs_show_options(struct seq_file *m, struct dentry *root)
if (opts->dmask)
seq_printf(m, ",dmask=%04o", ~opts->fs_dmask_inv);
if (opts->nls_name)
- seq_printf(m, ",nls=%s", opts->nls_name);
+ seq_printf(m, ",iocharset=%s", opts->nls_name);
if (opts->sys_immutable)
seq_puts(m, ",sys_immutable");
if (opts->discard)
--
2.25.1