All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zheng Liu <gnehzuil.liu@gmail.com>
To: Ian Nartowicz <claws@nartowicz.co.uk>
Cc: linux-ext4@vger.kernel.org
Subject: Re: inline_data feature
Date: Thu, 13 Feb 2014 20:11:05 +0800	[thread overview]
Message-ID: <20140213121105.GA12521@gmail.com> (raw)
In-Reply-To: <loom.20140210T125618-759@post.gmane.org>

On Mon, Feb 10, 2014 at 12:06:05PM +0000, Ian Nartowicz wrote:
> Zheng Liu <gnehzuil.liu <at> gmail.com> writes:
> 
> > 
> > On Sun, Feb 09, 2014 at 03:45:12PM +0000, Ian Nartowicz wrote:
> > > Ian Nartowicz <claws <at> nartowicz.co.uk> writes:
> > > 
> > > I copied the contents of /home onto the new partition.  fsck reports, and
> > > other utilities confirm, that symlinks with targets of 60 characters or
> > > longer were corrupted by the copy.  For example, a truncated symlink:
> > > All That You Can't Leave Behind.m3u -> /data/cd/U2/All That You Can't Leave
> > > Behind/playlist.flac.m
> > > 
> > > If I create the same symlink with ln, it appears OK until I unmount and
> > > mount the partition, then it shows truncated.  fsck doesn't like it but is
> > > unable to correct it.
> > 
> > That would be great if you can provide some steps to reproduce this
> > issue.  I write a simple script to try to reproduce it, but I couldn't
> > hit the problem.  Am I missing something?
> > 
> >   #!/bin/bash
> > 
> >   mkdir test
> >   cd test
> >   filename="ALL-That-You-Can't-Leave-Behind.m3u"
> > 
> >   echo "hello" > $filename
> >   ln -s $filename symlinkfile
> >   readlink symlinkfile
> > 
> >   newdir="data/cd"
> >   mkdir -p $newdir
> >   cp -d symlinkfile $newdir
> >   readlink $newdir/symlinkfile
> > 
> > Thanks,
> >                                                 - Zheng
> > --
> 
> To reproduce this on my system, the full path for $filename needs to be
> longer than 60 characters.  That seems to be the only requirement.  Create
> the symlink, unmount, mount, and the target path of the synlink is truncated
> to 59 characters and hence the link is broken.
> 
> fsck reports those symlinks as follows:
> Symlink /iann/test.m3u (inode #139) is invalid.
> Clear<y>? no
> Entry 'test.m3u' in /iann (8001) has an incorrect filetype (was 7, should be 0).
> Fix<y>? no
> 
> If I try to clear or fix, it just leaves behind damaged inodes which fsck
> can't fix.

I believe that this patch can fix the bug that corrupts the fast
symlink [1].  Meanwhile e2fsck should fix this issue but it doesn't.  So
there is a bug in e2fsprogs.  I will try to fix it soon.

1. http://permalink.gmane.org/gmane.comp.file-systems.ext4/42518

Thanks,
                                                - Zheng

      reply	other threads:[~2014-02-13 12:06 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-22 16:17 inline_data feature Ian Nartowicz
2014-01-24 16:05 ` Ian Nartowicz
2014-01-24 16:21   ` Theodore Ts'o
2014-01-24 18:44     ` Ian Nartowicz
2014-01-25 20:22 ` Ian Nartowicz
2014-01-26  3:29   ` Theodore Ts'o
2014-01-28 12:20     ` Zheng Liu
2014-02-09 14:39       ` Ian Nartowicz
2014-02-09 15:45 ` Ian Nartowicz
2014-02-10  3:47   ` Zheng Liu
2014-02-10 12:06     ` Ian Nartowicz
2014-02-13 12:11       ` Zheng Liu [this message]

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=20140213121105.GA12521@gmail.com \
    --to=gnehzuil.liu@gmail.com \
    --cc=claws@nartowicz.co.uk \
    --cc=linux-ext4@vger.kernel.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.