seligman@neon.stanford.edu (Scott Seligman) (10/07/89)
There appears to be a bug in the NFS shipped with HP-UX 6.5. A detailed description follows. Does anyone know what's going on? Has this been fixed for release in 7.0 (please, someone say "yes")? Here are the symptoms: I "cd" to an NFS-mounted directory (both the NFS client and NFS server are 350's running 6.5) and type "ls" or "echo *" or something else that causes an NFS "readdir" request to be sent. For most such directories this works just fine, but for a few directories the listing is incomplete and the following error message appears on the console: Oct 05 11:16:52.52946: Network NFS Error 2025, pic [ICS] Function failed [server, function, error] : sid readdir CANT DECODE RES This error is completely reproducible. I ran a "netwatch" program to look at the UDP packets exchanged between the two hosts. Something very interesting happens at this level (detailed listings are available to anyone who wants to examine them, free of charge!) Host1 sends a GETATTR request to host2, and host2 responds. Host1 then sends a LOOKUP request, and host2 responds. Host1 sends a second GETATTR request seemingly identical to the first, and host2 responds. Host1 sends a READDIR request, asking for the directory listing starting at byte 0. Host2 fills up a packet with the first half of the directory listing and sends it to host1. It sends 512 bytes, which coincidentally is exactly the same size as the "rsize" and "wsize" appearing in the "/etc/mount" command. Host1 sends a second READDIR request. So far so good. But instead of asking for the listing starting at byte 512, it asks for the listing starting at byte 0, just like before. Host2 sends the first half of the listing again. Host1 asks for the first half again. Host2 sends the first half again. Host1 asks for the first half again. And so on until host1 gives up and prints the error messaage. Scott Seligman seligman@cs.stanford.edu ...!decwrl!cs.stanford.edu!seligman