A Question about NFS and msync

Chaitanya Hazarey c.v.hazarey at gmail.com
Wed Mar 1 20:42:01 PST 2006


Hello all,

I am a new subscriber to the list with I guess, an old problem. I will
try to explain my setup in brief and then try to ask my question.

If this is not the proper place to ask this question please do kindly
point me to the correct mailing list.

We have got a FreeBsd 5.4 NIS server serving regular maps and autofs
maps. It has some Linux and Solaris clients.

The Linux, Solaris clients use the autofs to mount the home
directories of users as and when required.

Recently, there seems to be a problem with the NFS server of the
FreeBSD as the clients are getting all the time :

NFS server not responding still trying....
and then
NFS server OK

What happenns because of this is that the clients seem to be very slow
and large file transactions will make the clients hang.

There seemed to be no problem at first but this has started recently.

The server gives the following error :

Mar  2 10:05:21 servernis rpc.statd: msync() failed: Invalid argument

and when I used ktrace and kdump on rpc.statd I got :
  17135 rpc.statd RET   read 0
  17135 rpc.statd CALL  close(0x9)
  17135 rpc.statd RET   close 0
  17135 rpc.statd CALL  __sysctl(0x11ffe2e0,0x4,0,0x11ffe2f0,0,0)
  17135 rpc.statd RET   __sysctl 0
  17135 rpc.statd CALL  __sysctl(0x11ffe2e0,0x4,0x1000,0x11ffe2f0,0,0)
  17135 rpc.statd RET   __sysctl -1 errno 14 Bad address
  17135 rpc.statd CALL  msync(0x1602a2000,0,0)
  17135 rpc.statd RET   msync -1 errno 22 Invalid argument
  17135 rpc.statd CALL  gettimeofday(0x11ffd670,0)
  17135 rpc.statd RET   gettimeofday 0
  17135 rpc.statd CALL  sendto(0x8,0x11ffd6e0,0x3f,0,0,0)
  17135 rpc.statd GIO   fd 8 wrote 63 bytes
       "<27>Mar  1 13:48:56 rpc.statd: msync() failed: Invalid argument"
  17135 rpc.statd RET   sendto 63/0x3f
  17135 rpc.statd CALL  sendto(0x4,0x12004a000,0x20,0,0x12001a040,0x1c)
  17135 rpc.statd GIO   fd 4 wrote 32 bytes
       0x0000 440c efc6 0000 0001 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0065                          
|D..............................e|



My questions are :

1) Any way to diagnose the situation, I am monitoring the log files
and also have adjusted the time on both the machines.

2) Is the problem and the error message connected.

3) Is this a known bug ? And are there patches for it ?

4) Is there a workaround for this kind of a problem ?

Thanks,

Chaitanya


More information about the freebsd-questions mailing list