linux-ext4.vger.kernel.org archive mirror
 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 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).