Ok. The bug is in the NFS kernel daemon. It returns -1 as the file
offset at EOF. That is wrong. Linus, here is a patch.
Thanks.
H.J.
--- --- /home/work/linux/src/kernel/linux/fs/nfsd/vfs.c Wed Jul 29 12:32:50 1998 +++ fs/nfsd/vfs.c Thu Aug 6 21:21:12 1998 @@ -1159,8 +1159,12 @@ nfsd_readdir(struct svc_rqst *rqstp, str /* Hewlett Packard ignores the eof flag on READDIR. Some * fs-specific readdir implementations seem to reset f_pos to 0 - * at EOF however, causing an endless loop. */ - if (cd.offset && !eof) + * at EOF however, causing an endless loop. + * + * We should always return the current offset in the directory + * even if we are at EOF. Return -1 is wrong. + */ + if (cd.offset) *cd.offset = htonl(file.f_pos); p = cd.buffer;- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html