[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120529195019.GE23991@quack.suse.cz>
Date: Tue, 29 May 2012 21:50:19 +0200
From: Jan Kara <jack@...e.cz>
To: Ted Ts'o <tytso@....edu>
Cc: Andreas Dilger <adilger@...ger.ca>, linux-fsdevel@...r.kernel.org,
Ext4 Developers List <linux-ext4@...r.kernel.org>,
viro@...IV.linux.org.uk, sami.liedes@....fi
Subject: Re: [PATCH] vfs: avoid hang caused by attempting to rmdir an
invalid file system
On Mon 28-05-12 17:05:11, Ted Tso wrote:
> On Mon, May 28, 2012 at 02:29:05PM -0600, Andreas Dilger wrote:
> > This patch is good from the POV of covering all filesystems, and
> > avoiding the deadlock at the dcache level. It would be possible to
> > detect this problem in the filesystem itself during lookup, before
> > the bad link got into the dcache itself. Something like:
>
> I like that as a solution for detecting the problem in ext4. As you
> say, it's still an issue for other file systems, and so the patch I
> proposed is still probably a good idea for the VFS. But this way ext4
> (and ext3 when Jan backports it) will be able to detect the problem
> and mark the file system as being corrupted.
Actually, I think there's even better way. d_splice_alias() can rather
easily detect the problem and report it to filesystem. The advantage is
that the check in d_splice_alias() can catch any "hardlinks" to
directories, not just self loops. The patch is attached, I also have
corresponding handling written for ext? filesystems but that's trivial.
I'll post the whole series to Al to have a look.
Honza
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists