Re: [PATCH 00/11] fs/dcache: Limit # of negative dentries
From: Al Viro <viro@zeniv.linux.org.uk>
Date: 2020-02-28 04:53:05
Also in:
linux-fsdevel, lkml
From: Al Viro <viro@zeniv.linux.org.uk>
Date: 2020-02-28 04:53:05
Also in:
linux-fsdevel, lkml
On Fri, Feb 28, 2020 at 12:36:09PM +0800, Ian Kent wrote:
And let's not forget that file systems are the primary source of these and not all create them on lookups. I may be mistaken, but I think ext4 does not while xfs definitely does.
Both ext4 and xfs bloody well *DO* create hashed negative dentries on lookups. There is a pathological case when they are trying to be case-insensitive (and in that situation we are SOL - if somebody insists upon mounting with -o make-it-suck, that's what they bloody well get). Casefondling idiocy aside, negative lookups are hashed. On all normal filesystems. Look for d_splice_alias() getting passed NULL inode - that's where ->lookup() instances normally create those.