LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: "Pali Rohár" <pali@kernel.org>
To: Kari Argillander <kari.argillander@gmail.com>
Cc: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>,
	Christoph Hellwig <hch@lst.de>,
	ntfs3@lists.linux.dev, linux-kernel@vger.kernel.org,
	linux-fsdevel@vger.kernel.org,
	Matthew Wilcox <willy@infradead.org>,
	Christian Brauner <christian.brauner@ubuntu.com>
Subject: Re: [PATCH v2 5/6] fs/ntfs3: Add iocharset= mount option as alias for nls=
Date: Thu, 19 Aug 2021 11:55:27 +0200	[thread overview]
Message-ID: <20210819095527.w4uv6gzuyaotxjpe@pali> (raw)
In-Reply-To: <20210819094532.7uardf2q2u5w24yt@kari-VirtualBox>

On Thursday 19 August 2021 12:45:32 Kari Argillander wrote:
> On Thu, Aug 19, 2021 at 10:26:58AM +0200, Pali Rohár wrote:
> > On Thursday 19 August 2021 03:26:32 Kari Argillander wrote:
> > > 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),
> > 
> > Anyway, this is a new filesystem driver. Therefore, do we need to have
> > for it since beginning deprecated option?
> 
> I have also thought about this. In my mind this is new driver to our tree.
> But is been available from Paragon. Their customers may migrate to this
> so let's give them easy path to it. They also have free version and
> there is many Linux user who will switch to this when this is available.
> 
> Another thing what I been thinking is that how we will switch from
> ntfs->ntfs3. To give easy path to this driver then we should in some
> point add ntfs driver mount options to this one. Maybe not totally
> funtional, but so that mounting is possible. Current ntfs driver had nls
> option so it makes sense to add it here. We might even like to think
> ntfs-3g mount options because that is more used.
> 
> Of course we can just drop this. But I like that user experience is good
> with kernel. And if we can make that little more pleasent with couple
> line of trivial code then imo let's do it. We just need to make sure we
> drop these in one point of time. It is too often these kind of things
> will live in kernel "internity".

Makes sense. Sometimes it is better to introduce legacy/deprecated code
also to the new one.

In case this ntfs3 driver is going to replace ntfs driver then it would
have to understand all options supported by ntfs, even those which are
already deprecated and also those which will be deprecated in future.
(Until there is a decision to drop it)

> > 
> > >  	{}
> > >  };
> > >  
> > > @@ -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
> > > 
> > 

  reply	other threads:[~2021-08-19  9:55 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-19  0:26 [PATCH v2 0/6] fs/ntfs3: Use new mount api and change some opts Kari Argillander
2021-08-19  0:26 ` [PATCH v2 1/6] fs/ntfs3: Remove unnecesarry mount option noatime Kari Argillander
2021-08-24  7:58   ` Christoph Hellwig
2021-08-24 11:17   ` Christian Brauner
2021-08-19  0:26 ` [PATCH v2 2/6] fs/ntfs3: Remove unnecesarry remount flag handling Kari Argillander
2021-08-24  7:59   ` Christoph Hellwig
2021-08-24 11:17   ` Christian Brauner
2021-08-19  0:26 ` [PATCH v2 3/6] fs/ntfs3: Use new api for mounting Kari Argillander
2021-08-19  8:18   ` Pali Rohár
2021-08-19 10:01     ` Kari Argillander
2021-08-19 21:53   ` Kari Argillander
2021-08-24  8:03   ` Christoph Hellwig
2021-08-24  8:21     ` Kari Argillander
2021-08-27 18:44       ` Konstantin Komarov
2021-08-24 11:32   ` Christian Brauner
2021-08-24 14:13     ` Kari Argillander
2021-08-19  0:26 ` [PATCH v2 4/6] fs/ntfs3: Make mount option nohidden more universal Kari Argillander
2021-08-24  8:03   ` Christoph Hellwig
2021-08-24 11:16   ` Christian Brauner
2021-08-19  0:26 ` [PATCH v2 5/6] fs/ntfs3: Add iocharset= mount option as alias for nls= Kari Argillander
2021-08-19  8:26   ` Pali Rohár
2021-08-19  9:45     ` Kari Argillander
2021-08-19  9:55       ` Pali Rohár [this message]
2021-08-19  0:26 ` [PATCH v2 6/6] fs/ntfs3: Rename mount option no_acl_rules > (no)acl_rules Kari Argillander
2021-08-24  8:03   ` Christoph Hellwig
2021-08-24 11:15   ` Christian Brauner

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=20210819095527.w4uv6gzuyaotxjpe@pali \
    --to=pali@kernel.org \
    --cc=almaz.alexandrovich@paragon-software.com \
    --cc=christian.brauner@ubuntu.com \
    --cc=hch@lst.de \
    --cc=kari.argillander@gmail.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ntfs3@lists.linux.dev \
    --cc=willy@infradead.org \
    --subject='Re: [PATCH v2 5/6] fs/ntfs3: Add iocharset= mount option as alias for nls=' \
    /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

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).