xfs
[Top] [All Lists]

Re: Files with non-ASCII names inaccessible after xfs_repair

To: Eric Sandeen <sandeen@xxxxxxxxxxx>
Subject: Re: Files with non-ASCII names inaccessible after xfs_repair
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Thu, 16 Jan 2014 08:08:03 +1100
Cc: Zachary Kotlarek <zach@xxxxxxxxxxxx>, xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <52D6AF1A.8010604@xxxxxxxxxxx>
References: <20140113192732.GI3469@dastard> <0E45339E-04C4-4775-B6B0-FC55245B0AED@xxxxxxxxxxxx> <20140114022414.GM3469@dastard> <BE0C947E-37DE-4CA1-B120-59B95E1E8EB8@xxxxxxxxxxxx> <20140115015350.GR3469@dastard> <61E74CEF-8244-4E90-BA7D-91D54DADC3C1@xxxxxxxxxxxx> <20140115034803.GT3469@dastard> <1E5E569C-2E11-42A1-A771-89D4800BC412@xxxxxxxxxxxx> <20140115063722.GW3469@dastard> <52D6AF1A.8010604@xxxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Wed, Jan 15, 2014 at 09:54:02AM -0600, Eric Sandeen wrote:
> On 1/15/14, 12:37 AM, Dave Chinner wrote:
> > On Tue, Jan 14, 2014 at 09:30:57PM -0800, Zachary Kotlarek wrote:
> >>
> >> On Jan 14, 2014, at 7:48 PM, Dave Chinner <david@xxxxxxxxxxxxx> wrote:
> >>
> >>> It's called *ASCII* Case Insensitivity for a reason: it doesn't
> >>> support anything other than ASCII. So your usage is not actually
> >>> supported at all, hence it's no surprise that it has caused
> >>> breakage.
> >>
> >> Okay. Thanks for the explanation.
> >>
> >> FWIW, I read âASCII-only case-insensitiveâ to mean âonly case-insensitive 
> >> for ASCIIâ as in à and à would not match each other. If it actually means 
> >> âanything other than ASCII is subject to complete breakageâ a more nuanced 
> >> explanation in the man page might be desirable.
> > 
> > Sure. Can you write a patch to add explanation that explain the
> > problem you've had?
> > 
> >> I donât suppose thereâs any way to disable that setting short of creating 
> >> a new file system?
> > 
> > Not officially. Changing it means you have to change every single
> > hash for every directory entry. I *think* that you could probably do
> > it with a bit of xfs_db magic and and xfs_repair pass.
> > 
> > First, A warning, some advice and a disclaimer: back up anything you
> > don't want to lose, because if this screws up it'll trash the
> > directory structure and you may *LOSE* *ALL* *YOUR* *DATA*. This is
> > dangerous, not recommended and I take no responsibility for what
> > happens if you try it and it fails.
> > 
> > After taking a backup, use xfs_metadump to set up for a
> > non-destructive trial run.  take a copy of the filesystem metadata
> > using xfs_metadump:
> > 
> > # xfs_metadump <dev> scratch.metadump
> 
> NB: You'll want to add the "-o" option to not obfuscate filenames, or
> you'll probably have no idea if Dave's later steps are working or not.
> 
> 
> (I haven't read the whole thread, but is there no way for ascii-ci mode
> to reject non-ascii names in the first place?  This seems like quite
> the pitfall.)

The utf-8 patches add a "is this valid utf-8" check to all the
operations that care. We could probably do that for the ASCII-CI
stuff if you can define what ASCII means....

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

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