Steve, List Here is an updated list of the additional patches needed to expand directory caching based on leases. The first three patches should be small and trivial. They do not change functionality, just preparing for the fourth, big patch. The fourth patch is the meat of the series. This is where we change from a static allocatoin to cache only the root-directory to instead dynamically cache any (within limits) directory. The fourth patch contains a large comment describing the strategies for locking and reference counts for these structures to make review easier. The fifth patch expands how we cache attributes for the entries in these directories, which is based on holding a reference to the dentry for the directory. (so that inode.c can find it) This patch allows SAFE caching of all attributes in these directories for a long time and will reduce the need for the ad-hoc and unsafe "cache the attributes for some time to prioritize performance" which we have done for a long time. This caching is based and triggered from opendir(), so it will only apply to directories we have already scanned (and read the entries and attributes for) The sixth patch is a patch to recind the lease after an arbitrarily long timeout.