Re: d_splice_alias() problem.

From: Andrew Morton
Date: Fri Apr 23 2004 - 18:51:30 EST


Nikita Danilov <Nikita@xxxxxxxxxxx> wrote:
>
> for some time I am observing that during stress tests over NFS
>
> shrink_slab->...->prune_dcache()->prune_one_dentry()->...->iput()
>
> is called on inode with ->i_nlink == 0 which results in truncate and
> file deletion. This is wrong in general (file system is re-entered), and
> deadlock prone on some file systems.

The filesystem is only reentered if the caller of __alloc_pages() passed in
__GFP_FS, in which case the bug is in the caller, not in shrink_slab().

-
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/