Re: [RFC] freeing unlinked file indefinitely delayed

From: Al Viro
Date: Sun Jul 12 2015 - 11:00:51 EST


On Wed, Jul 08, 2015 at 10:41:43AM -0500, Ben Myers wrote:

> The bug rings a bell for me so I will stick my neck out instead of
> lurking. Don't you need to sample that link count under the filesystems
> internal lock in order to avoid an unlink/iget race? I suggest creating
> a helper to prune disconnected dentries which a filesystem could call in
> .unlink. That would avoid the risk of unintended side effects with the
> d_alloc/d_free/icache approach and have provable link count correctness.

For one thing, this patch does *not* check for i_nlink at all. For another,
there's no such thing as 'filesystems internal lock' for i_nlink protection -
that's handled by i_mutex... And what does iget() have to do with any of that?
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/