On Thu, Mar 17, 2022 at 7:21 PM David Howells <dhowells@xxxxxxxxxx> wrote: > > Hi Rohith, Steve, > > I've updated my cifs-experimental branch. What I have there seems to work > much the same as without the patches. > > I've managed to run some xfstests on it. I note that various xfstests fail, > even without my patches, and some of them seem quite slow, again even without > my patches. > > Note that I'm comparing the speed to afs which does a lot of directory > management locally compared to other network filesystems, so I might be > comparing apples and oranges. For example, I can run generic/013 on afs in > 4-7s, whereas it's 3m-7m on cifs. However, since /013 does a bunch of > directory ops, afs probably has an advantage by caching the entire dir > contents locally, thereby satisfying lookup and readdir from local cache and > using a bulk status fetch to stat files from a dir in batches of 50 or so. > This is probably worth further investigation at some point. Yes - this is a point that Nagendra also made recently that we could benefit from some of the tricks that NFS uses for caching directory contents not just the stat and revalidate_dentry info (e.g. affected by actimeo). Since the protocol supports directory leases it would be relatively safe compared to some other protocols to cache directory contents much more aggressively, and even without directory leases, other tricks (like directory change notification or even simply the mtime on the directory) can be used to cache directory contents reasonably safely. -- Thanks, Steve