On Thu, 2022-09-08 at 10:45 +0100, Chris Chilvers wrote: > I should have flagged this as a bug on the first email. > > I've run into an interesting issue using VAST data, their NFS > implementation > makes use of the full 64 bit unsigned range allowed by NFS cookie for > READDIR > and READDIRPLUS. > > The issue is that this 64 unsigned value is used for the directory's > file > position (d_off), which is a 64 bit signed value. This can cause > readdir and > telldir to return negative values. Known issue that we had to deal with 25 years ago for 32 bit systems when glibc first decided to make lseek() return signed values (struct old_linux_direct still has it as an unsigned value). So VAST have had a long time to learn not to do this... -- Trond Myklebust Linux NFS client maintainer, Hammerspace trond.myklebust@xxxxxxxxxxxxxxx