[Top] [All Lists]

Re: [RFC v2] Unicode/UTF-8 support for XFS

To: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Subject: Re: [RFC v2] Unicode/UTF-8 support for XFS
From: Ben Myers <bpm@xxxxxxx>
Date: Fri, 26 Sep 2014 12:30:14 -0500
Cc: Olaf Weber <olaf@xxxxxxx>, Dave Chinner <david@xxxxxxxxxxxxx>, linux-fsdevel@xxxxxxxxxxxxxxx, tinguely@xxxxxxx, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <20140926165605.GA25274@xxxxxxxxxxxxx>
References: <20140918195650.GI19952@xxxxxxx> <20140922222611.GZ4322@dastard> <5422C540.1060007@xxxxxxx> <20140924231024.GA4758@dastard> <54257D3F.70302@xxxxxxx> <20140926165605.GA25274@xxxxxxxxxxxxx>
User-agent: Mutt/1.5.20 (2009-06-14)
Hey Christoph,

On Fri, Sep 26, 2014 at 09:56:05AM -0700, Christoph Hellwig wrote:
> On Fri, Sep 26, 2014 at 04:50:39PM +0200, Olaf Weber wrote:
> > >It's a chicken and egg situation. I'd much prefer we enforce clean
> > >utf8 from the start, because if we don't we'll never be able to do
> > >that. And other filesystems (e.g. ZFS) allow you to do reject
> > >anything that is not clean utf8....
> > 
> > As I understand it, this is optional in ZFS. I wonder what people's
> > experiences are with this.
> It is as optional as your utf8 support for XFS is.  But they do
> enforce valid utf8 if they use utf8 normalization for file name
> comparisms, be that case sensitive or insensitive.  Take a look at the
> zfs(8) man page.

The way I'm reading that man page, it seems like with ZFS you have one
option to choose whether to use normalization:

'nomalization = "none|FormD|FormKCf"'

And a separate option to choose whether to accept non-utf8 filenames:

'utf8only = "on|off".

The default setting appears to be that ZFS does allow non-utf8

Whereas with Olaf's series you have one option that turns normalization
on or off, and he is not giving you a choice of whether non-utf8
filenames will be accepted (they will be accepted).

So IIUC there is a distinction:  The utf8 support for ZFS is "more
optional" than the utf8 support for XFS.


<Prev in Thread] Current Thread [Next in Thread>