On Sun, Nov 04, 2012 at 06:54:57AM +0100, Emmanuel Dreyfus wrote: > But that cannot handle negative caching. FUSE allows the filesystem to > specify a TTL for a ENOENT. I cannot implement it at the PUFFS level > like I did before, since there is no struct puffs_node associated with > an unexistant node.
Anything that calls itself a name cache ought to support negative caching. Someone(TM) needs to figure out a way to make it work. > The simpliest way of dealing with this would be to push down the name > cache TTL from struct puffs_node to puffs_namecache, and add an optional > struct timespec argument to cache_enter(). That argument would tell the > name cache how long the cache entry shall be valid at most. NULL would > mean current behavior. Is this a puffs-specific cache_enter or the "real" one? Adding TTL support to the kernel name cache would simplify the NFS code. -- David A. Holland dholl...@netbsd.org