On Wed, 2023-08-30 at 16:10 -0400, Jeff Layton wrote: > On Wed, 2023-08-30 at 15:42 -0400, Benjamin Coddington wrote: > > Again we have claimed regressions for walking a directory tree, > > this time > > with the "find" utility which always tries to optimize away asking > > for any > > attributes until it has a complete list of entries. This behavior > > makes > > the readdir plus heuristic do the wrong thing, which causes a storm > > of > > GETATTRs to determine each entry's type in order to continue the > > walk. > > > > For v4 add the type attribute to each READDIR request to include it > > no > > matter the heuristic. This allows a simple `find` command to > > proceed > > quickly through a directory tree. > > > > The important bit here is that with v4, we can fill out d_type even > when > "plus" is false, at little cost. The downside is that non-plus > READDIR > replies will now be a bit larger on the wire. I think it's a > worthwhile > tradeoff though. The reason why we never did it before is that for many servers, it forces them to go to the inode in order to retrieve the information. IOW: You might as well just do readdirplus. -- Trond Myklebust Linux NFS client maintainer, Hammerspace trond.myklebust@xxxxxxxxxxxxxxx