Re: patch for 2.1.78 knfsd

Frank Heldt (Frank.Heldt@mahr.de)
Mon, 12 Jan 1998 11:40:51 +0100


Bill Hawes wrote:
>
> The attached patch (slightly updated) for 2.1.78 knfsd fixes a couple of
> reported problems with certain clients. The nfs create procedure wasn't
> truncating the file properly when called for an existing file, and the
> setattr procedure was ignoring other attributes after a size change.
>
> The patch also adds a fill_inode function for the nfsd sysctl and stat
> routines; this is used to increment and decrement the module counts so
> that the module can't be unloaded while a /proc inode refers to it.
>
> I've removed the briefly-added "xyzzx" debugging toggle, as it's easier
> to just use the /proc/sys/sunrpc/nfsd_debug sysctl variable for
> debugging control.

Hi Bill,

congratulations, you got it ! This patch fixes the problem I've seen
with
the OS-9 NFS-client. Here's what i get under OS-9:

heldt@vme200:/knfs/heldt/XXX> echo xxx > xxx
heldt@vme200:/knfs/heldt/XXX> dir -e
Directory of . 10:39:58
Owner Last modified Attributes Sector Bytecount Name
------- ------------- ---------- ------ --------- ----
200.204 66/10/23 2112 ------wr 1F157 4 xxx
heldt@vme200:/knfs/heldt/XXX> echo yyyyyyyy >yyyyyyyy
heldt@vme200:/knfs/heldt/XXX> dir -e
Directory of . 10:40:09
Owner Last modified Attributes Sector Bytecount Name
------- ------------- ---------- ------ --------- ----
200.204 66/10/23 2112 ------wr 1F157 4 xxx
200.204 66/10/23 2113 ------wr 1F158 9 yyyyyyyy
heldt@vme200:/knfs/heldt/XXX> touch zzzz
heldt@vme200:/knfs/heldt/XXX> dir -e
Directory of . 10:54:59
Owner Last modified Attributes Sector Bytecount Name
------- ------------- ---------- ------ --------- ----
200.204 66/10/23 2112 ------wr 1F157 4 xxx
200.204 66/10/23 2113 ------wr 1F158 9 yyyyyyyy
200.204 98/01/12 1054 ------wr 1F159 0 zzzz
heldt@vme200:/knfs/heldt/XXX> copy -r xxx yyyyyyyy
heldt@vme200:/knfs/heldt/XXX> dir -e
Directory of . 11:01:11
Owner Last modified Attributes Sector Bytecount Name
------- ------------- ---------- ------ --------- ----
200.204 66/10/23 2112 ------wr 1F157 4 xxx
200.204 66/10/23 2134 ------wr 1F158 4 yyyyyyyy
200.204 98/01/12 1054 ------wr 1F159 0 zzzz

The only thing different from unfsd now is the strange timestamp.
What's interesting is that "touch" on OS-9 shows the correct
timestamp, but this is what I get on the linux server:

heldt@linux240:~/XXX> ll
total 2
-rw-rw---- 1 heldt entw 4 Jan 12 10:39 xxx
-rw-rw---- 1 heldt entw 4 Jan 12 11:01 yyyyyyyy
-rw-rw---- 1 heldt entw 0 Apr 3 2029 zzzz

BTW, I installed your latest patches for nfs+sunrpc also. I
wanted to turn on nfsd debugging on the server with
"echo 1 >/proc/sys/sunrpc/nfsd_debug", but there's no debugging
info in /var/log/messages. Am I wrong here?

So how can I help to fix this "last" (;-) bug in knfd?

Bye
Frank

PS: That's one of the things i like so much about linux, bugs
get fixed in days (and not in months aehhh Service Packs), so
thanks again Bill. I really wonder if you ever sleep...

-- 
* Frank Heldt
* mailto:Frank.Heldt@mahr.de   ===> Linux for IQ's higher than 95 <===
* +49 0551/7073-511