Re: Eureka! (was Re: UTF-8 and case-insensitivity)

viro
2004-02-19T20:06:16Z

On Thu, Feb 19, 2004 at 11:48:50AM -0800, Linus Torvalds wrote:
> The VFS rule is:
> - all new dentries start off with the two magic bits clear
> - whenever we shrink a dentry, we clear the two magic bits in the parent
>
> and that is _all_ the VFS layer ever does. Even Al won't find this
> obnoxious (yeah, we might clear the bits after a timeout on things that
> need re-validation, but that's in the noise).

> Notice what the above does? After the above loop, bit two will be set IFF
> the dentry cache now contains every single name in the directory.
> Otherwise it will be clear. Bit two will basically be a "dcache complete"
> bit.

What about dentry getting dropped in the middle of that loop _and_
another task setting the first bit again before the loop ends?