I've encountered a problem while iterating large directories via an NFS mount. Scenario: 1. Linux NFS client iterates a directory with many (millions) of files, e.g. via getdents() until all entries are done. In my case, READDIRPLUS is being used under the hood. Trivial reproduction is to run: ls -la 2. At the same time, run the stat tool on a file inside that directory. The directory on the server is not being modified anywhere (on this client or any other client). Result: the next or ongoing getdents will get stuck for a long time (tens of seconds to minutes). It appears to be re-iterating some of the work it already did, by going back to a previous NFS READDIRPLUS cookie. Things I've tried as workarounds: - Mounting with nordirplus - the iteration doesn't seem to reset or at least getdents doesn't get stuck, but now I have tons of LOOKUPs, as expected. - Setting actimeo=(large number) doesn't affect the behavior Questions: 1. Why does the stat command cause this? 2. How can I avoid the reset, i.e. ensure forward progress of the dir iteration?