Ok, it still happens even when not using aliases, it just took longer to 
turn up.

Attempting to mount (snoop running on NFS client)

bash-3.00# mount 172.20.12.228:/export/mail /mnt
nfs mount: 172.20.12.228: : RPC: Program not registered
nfs mount: retrying: /mnt
172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1021 Syn Seq=2365435228 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1021 S=2049 Rst Ack=2365435229 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1020 Syn Seq=2242896555 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1020 S=2049 Rst Ack=2242896556 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0

172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1019 Syn Seq=1448368793 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1019 S=2049 Rst Ack=1448368794 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1018 Syn Seq=883538524 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1018 S=2049 Rst Ack=883538525 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 NFS C FSSTAT3 FH=D702
172.20.12.228 -> 172.20.12.21 ICMP Destination unreachable (UDP port 
2049 unreachable)
172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1017 Syn Seq=3028937941 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>


172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1016 Syn Seq=3821439944 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1016 S=2049 Rst Ack=3821439945 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1015 Syn Seq=1966482573 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1015 S=2049 Rst Ack=1966482574 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0


^C
bash-3.00# 172.20.12.21 -> 172.20.12.228 TCP D=2049 S=1014 Syn 
Seq=2696600158 Len=0 Win=49640 Options=<mss 1460,nop,wscale 
0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=1014 S=2049 Rst Ack=2696600159 Win=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=3 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0
172.20.12.21 -> 172.20.12.228 PORTMAP C GETPORT prog=100005 (MOUNT) 
vers=2 proto=UDP
172.20.12.228 -> 172.20.12.21 PORTMAP R GETPORT port=0



# rpcinfo 172.20.12.228
rpcinfo: can't contact rpcbind: : RPC: Unable to receive; errno = 
Connection refused; System error
bash-3.00# 172.20.12.21 -> 172.20.12.228 TCP D=111 S=50279 Syn 
Seq=3313033773 Len=0 Win=49640 Options=<mss 1460,nop,wscale 
0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=50279 S=111 Rst Ack=3313033774 Win=0
172.20.12.21 -> 172.20.12.228 TCP D=111 S=54373 Syn Seq=3383588494 Len=0 
Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
172.20.12.228 -> 172.20.12.21 TCP D=54373 S=111 Rst Ack=3383588495 Win=0
172.20.12.21 -> 172.20.12.228 RPCBIND C DUMP
172.20.12.228 -> 172.20.12.21 ICMP Destination unreachable (UDP port 111 
unreachable)

 From a different nfs client:

  rpcinfo 172.20.12.228
    program version netid     address             service    owner
     100000    4    ticots    x4500-05.unix.rpc   rpcbind    superuser
     100000    3    ticots    x4500-05.unix.rpc   rpcbind    superuser
     100000    4    ticotsord x4500-05.unix.rpc   rpcbind    superuser
     100000    3    ticotsord x4500-05.unix.rpc   rpcbind    superuser
     100000    4    ticlts    x4500-05.unix.rpc   rpcbind    superuser
     100000    3    ticlts    x4500-05.unix.rpc   rpcbind    superuser
     100000    4    tcp       0.0.0.0.0.111       rpcbind    superuser
     100000    3    tcp       0.0.0.0.0.111       rpcbind    superuser
     100000    2    tcp       0.0.0.0.0.111       rpcbind    superuser
     100000    4    udp       0.0.0.0.0.111       rpcbind    superuser
     100000    3    udp       0.0.0.0.0.111       rpcbind    superuser
     100000    2    udp       0.0.0.0.0.111       rpcbind    superuser
     100024    1    udp       0.0.0.0.128.10      status     superuser
     100024    1    tcp       0.0.0.0.128.3       status     superuser
     100024    1    ticlts    \021\000\000\000    status     superuser
     100024    1    ticotsord \024\000\000\000    status     superuser
     100024    1    ticots    \027\000\000\000    status     superuser
     100133    1    udp       0.0.0.0.128.10      -          superuser
     100133    1    tcp       0.0.0.0.128.3       -          superuser
     100133    1    ticlts    \021\000\000\000    -          superuser
     100133    1    ticotsord \024\000\000\000    -          superuser
     100133    1    ticots    \027\000\000\000    -          superuser
     100021    1    udp       0.0.0.0.15.205      nlockmgr   1
1073741824    1    tcp       0.0.0.0.128.4       -          1
     100021    2    udp       0.0.0.0.15.205      nlockmgr   1
     100021    3    udp       0.0.0.0.15.205      nlockmgr   1
     100021    4    udp       0.0.0.0.15.205      nlockmgr   1
     100021    1    tcp       0.0.0.0.15.205      nlockmgr   1
     100021    2    tcp       0.0.0.0.15.205      nlockmgr   1
     100021    3    tcp       0.0.0.0.15.205      nlockmgr   1
     100021    4    tcp       0.0.0.0.15.205      nlockmgr   1
     100155    1    ticotsord l\000\000\000       smserverd  superuser
     100011    1    ticlts    o\000\000\000       rquotad    superuser
     100011    1    udp       0.0.0.0.128.18      rquotad    superuser
     100231    1    ticlts    x4500-05.unix.nfsauth -          superuser
     100231    1    ticotsord x4500-05.unix.nfsauth -          superuser
     100231    1    ticots    x4500-05.unix.nfsauth -          superuser
     100005    1    udp       0.0.0.0.128.19      mountd     superuser
     100005    1    ticlts    \203\000\000\000    mountd     superuser
     100005    1    tcp       0.0.0.0.128.13      mountd     superuser
     100005    1    ticotsord \210\000\000\000    mountd     superuser
     100005    1    ticots    \213\000\000\000    mountd     superuser
     100005    2    udp       0.0.0.0.128.19      mountd     superuser
     100005    2    ticlts    \203\000\000\000    mountd     superuser
     100005    2    tcp       0.0.0.0.128.13      mountd     superuser
     100005    2    ticotsord \210\000\000\000    mountd     superuser
     100005    2    ticots    \213\000\000\000    mountd     superuser
     100005    3    udp       0.0.0.0.128.19      mountd     superuser
     100005    3    ticlts    \203\000\000\000    mountd     superuser
     100005    3    tcp       0.0.0.0.128.13      mountd     superuser
     100005    3    ticotsord \210\000\000\000    mountd     superuser
     100005    3    ticots    \213\000\000\000    mountd     superuser
     100003    2    udp       0.0.0.0.8.1         nfs        1
     100003    3    udp       0.0.0.0.8.1         nfs        1
     100227    2    udp       0.0.0.0.8.1         nfs_acl    1
     100227    3    udp       0.0.0.0.8.1         nfs_acl    1
     100003    2    tcp       0.0.0.0.8.1         nfs        1
     100003    3    tcp       0.0.0.0.8.1         nfs        1
     100003    4    tcp       0.0.0.0.8.1         nfs        1
     100227    2    tcp       0.0.0.0.8.1         nfs_acl    1
     100227    3    tcp       0.0.0.0.8.1         nfs_acl    1


Why would the NFS client not be able to talk to the server?


3 minutes later, rpcinfo got unstuck and NFS was back again. Without me 
doing anything but snoop.

Lund





Robert van Veelen wrote:
> I will try this out on my test hosts. Are you using NFSv3 exclusively? There 
> are no v4 clients in your env? If the clients are exclusively ro, have you 
> tried mointing with ro flag?
> 
> -rob
> 
> 
>  -----Original Message-----
> From:         Jorgen Lundman [mailto:lundman at gmo.jp]
> Sent: Monday, February 16, 2009 12:11 AM Eastern Standard Time
> To:   Robert van Veelen
> Subject:      Re: [nfs-discuss] NFS hanging with RPC timeout.
> 
> 
> I have not had time to prove this, but by asking the other admins which 
> NFS server mounts hung, nobody could remember x4500-01 ever hanging. The 
> reason I asked them was because x4500-01 is the only one where the 
> "alias" is lower IP than the real IP.
> 
> 01-alias: .220
> 01-real:  .221
> 02-real:  .222
> 02-alias: .223
> 03-real:  .224
> 03-alias: .225
> 04-real:  .226
> 04-alias: .227
> 
> Now, IP "value" should not matter, I know, but it just "felt" like it 
> was related. :)
> 
> Lund
> 
> 
> 
> Robert van Veelen wrote:
>> I have a handful of x4150s to play with this week. I'll drop some ipmi 
>> addresses on them and see if I can reproduce the symptoms that you are 
>> describing. Would be interesting to see. Always good to know where one's 
>> bugs lie.
>>
>> -rob
>>
>>
>>  -----Original Message-----
>> From:        Jorgen Lundman [mailto:lundman at gmo.jp]
>> Sent:        Sunday, February 15, 2009 11:47 PM Eastern Standard Time
>> To:  Robert van Veelen
>> Subject:     Re: [nfs-discuss] NFS hanging with RPC timeout.
>>
>>
>> The servers that hang the most are www and navi (apache), which is 
>> nearly exclusively read-only.  Servers like FTP, and vmx have yet to 
>> hang at all. It sure do not make much sense here.
>>
>> Strangely enough, navi servers (3 reboots a day before) "appears" to do 
>> a lot better (only one reboot in 2 days), but now we see a lot of:
>>
>> Feb 16 13:40:28 navi01.unix nfs: [ID 333984 kern.notice] NFS server 
>> 172.20.12.224 not responding still trying
>> Feb 16 13:40:41 navi01.unix nfs: [ID 563706 kern.notice] NFS server 
>> 172.20.12.224 ok
>> Feb 16 13:41:47 navi01.unix nfs: [ID 333984 kern.notice] NFS server 
>> 172.20.12.224 not responding still trying
>> Feb 16 13:42:03 navi01.unix nfs: [ID 563706 kern.notice] NFS server 
>> 172.20.12.224 ok
>> Feb 16 13:42:28 navi01.unix nfs: [ID 333984 kern.notice] NFS server 
>> 172.20.12.224 not responding still trying
>>
>>
>> Even though the x4500 is just fine, and talk to nav01 just fine even 
>> during one of these "stalls". Services appear unaffected.
>>
>> Oh bugger, I just noticed navi servers are not 5/08. That would possibly 
>> explain why they are the worst of all. I will upgrade these servers 
>> asap. (SunOS navi01.unix 5.11 snv_40 i86pc i386 i86pc)
>>
>> Lund
>>
>> Robert van Veelen wrote:
>>> Jorgen,
>>> I have been following the back and forth on the list with the ip alias 
>>> info. It does seem like a strange case. It would be interesting if you 
>>> found some connection to the hangs we are seeing but it also appears 
>>> unlikely now. 
>>> For what it's worth, the patch I specified was rolled into the 10/08 
>>> release and cannot be removed trivially. This is how I was burned while 
>>> deploying to our first qa hosts for 10/08 then through the backported patch 
>>> to 5/08.
>>> Are you writing/reading to or from the shared nfs space directly on the 
>>> server side? This seems to be a key factor in my steps to recreate our 
>>> hang. 
>>> Good luck,
>>>
>>> -rob
>>>
>>>
>>>  -----Original Message-----
>>> From:       Jorgen Lundman [mailto:lundman at gmo.jp]
>>> Sent:       Sunday, February 15, 2009 07:55 PM Eastern Standard Time
>>> To: Robert van Veelen
>>> Subject:    Re: [nfs-discuss] NFS hanging with RPC timeout.
>>>
>>>
>>>
>>> Hello,
>>>
>>> Sorry, I only just show your mail now, my mail filters were not smart 
>>> enough to move it to the right place :) I do not think I have 137138-09 
>>> installed on the SOl 10 5/08 servers, but it appears installed on the 
>>> 10/08. But most recent findings seem to indicate that the problem we are 
>>> having are with IP aliases. Currently testing this hypothesis.
>>>
>>> Lund
>>>
>>>
>>>
>>> Robert van Veelen wrote:
>>>> Do you have Solaris patch 137138-09 installed? You may need to back that 
>>>> out until a permanent fix is posted. The issue that you are describing 
>>>> sounds exactly like a problem that I have seen on similar machines here. 
>>>> In my testing the only workaround was to back out the kernel patch 
>>>> 137138-09 on the clients (server can remain as is). If you have a support 
>>>> contract then I would also open a case with sun as there appears to be a 
>>>> regression in the kernel code. At this point I can reproduce the deadlock 
>>>> within 30 seconds.
>>>> You might be able to reference my open case for this issue. I will forward 
>>>> more info if you find that this is the same issue. Good luck.
>>>> Regards,
>>>>
>>>> -rob
>>>>
>>>>
>>>>  -----Original Message-----
>>>> From:      Jorgen Lundman [mailto:lundman at gmo.jp]
>>>> Sent:      Monday, February 09, 2009 09:21 PM Eastern Standard Time
>>>> To:        nfs-discuss at opensolaris.org
>>>> Subject:   [nfs-discuss] NFS hanging with RPC timeout.
>>>>
>>>> (Resent due to wrong sender, sorry)
>>>>
>>>>
>>>> Hello list!
>>>>
>>>> *** NFS Servers:
>>>>
>>>> x4500-01 to x4500-05
>>>> : Solaris 10 5/08, ZFS and "UFS on ZVOL" exported.
>>>> : NFSD_SERVER=1024, LOCKD_SERVER=128 average use about 900 / 20 threads.
>>>> : "bufhwm_pct,maxusers,ndquot,ncsize,ufs_ninode,clnt_max_conns,
>>>> : rpcmod:cotsmaxdupreqs,rpcmod:maxdupreqs" tweaked in /etc/system.
>>>>
>>>> *** NFS Clients:
>>>>
>>>> Supermicro 1U * 40
>>>> : Solaris 10 5/08
>>>> : No tweaks, Mounted as
>>>> : x4500-03:/export/mail - /export/mail nfs - yes vers=3,hard,intr,quota
>>>> : x4500-02:/export/preview - /export/preview nfs - yes vers=3,hard,intr
>>>>
>>>>
>>>> *** Background
>>>>
>>>> Using vers=3 to have uid mapping, without the need for UID lookups. UFS
>>>> on ZVOL are mounted with "quota". ZFS exported filesystems are mounted
>>>> without. The system is live and generally works very well.
>>>>
>>>> However, NFS will periodically hang. Usually to just one of the x4500
>>>> servers at a time, the solution currently is just to reboot the client.
>>>> I have attempted to fully umount all filesystems, and terminate the NFS
>>>> and RPC processes, in an attempt to remount. This will not fix it. I can
>>>> not really restart the NFSD/RPC processes on the x4500s.
>>>>
>>>> Usually looks like:
>>>>
>>>> # df -h
>>>> [snip]
>>>> x4500-03:/export/preview
>>>>                          23T   3.9M    23T     1%    /export/preview
>>>> NFS server x4500-01 not responding still trying
>>>> ^C
>>>>
>>>> Note that during this time, x4500-01 is still functioning correctly to
>>>> the other 39 servers, and x4500-02,03,04,05 are still mounted correctly
>>>> on this NFS client.
>>>>
>>>> # umount /export/www
>>>> # mount /export/www
>>>> NFS server x4500-01-vip not responding still trying
>>>>
>>>> Truss of the mount says:
>>>> 23102:   0.0000 getpid()                                        = 23102
>>>> [23101]
>>>> 23102:   0.0000 door_call(5, 0x080475A0)                        = 0
>>>> 23102:   0.0001 close(5)                                        = 0
>>>> NFS server x4500-01-vip not responding still trying
>>>> ^C23102:        69.0780 mount("x4500-01-vip:/export/www", "/export/www",
>>>> MS_DATA|MS_OPTIONSTR, "nfs3", 0x0806D400, 76, 0x0804777C, 1024) Err#4 EINTR
>>>>
>>>> Snoop says (x4500-01 is 172.20.12.220, NFS Client is 172.20.12.16)
>>>>
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100005 (MOUNT)
>>>> vers=3 proto=UDP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=39967
>>>> 172.20.12.16 -> 172.20.12.220 MOUNT3 C Null
>>>> 172.20.12.221 -> 172.20.12.16 MOUNT3 R Null
>>>> 172.20.12.16 -> 172.20.12.220 MOUNT3 C Mount /export/www
>>>> 172.20.12.221 -> 172.20.12.16 MOUNT3 R Mount OK FH=D502 Auth=unix
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100003 (NFS) vers=3
>>>> proto=TCP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=2049
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54091 Syn Seq=2255048579
>>>> Len=0 Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54091 S=2049 Syn Ack=2255048580
>>>> Seq=611591914 Len=0 Win=49640 Options=<mss 1460,nop,wscale 
>>>> 0,nop,nop,sackOK>
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54091 Ack=611591915
>>>> Seq=2255048580 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 NFS C NULL3
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54091 S=2049 Ack=2255048700
>>>> Seq=611591915 Len=0 Win=49520
>>>> 172.20.12.220 -> 172.20.12.16 NFS R NULL3
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54091 Ack=611591943
>>>> Seq=2255048700 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54091 Fin Ack=611591943
>>>> Seq=2255048700 Len=0 Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54091 S=2049 Ack=2255048701
>>>> Seq=611591943 Len=0 Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54091 S=2049 Fin Ack=2255048701
>>>> Seq=611591943 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54091 Ack=611591944
>>>> Seq=2255048701 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1161480442 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1161480442 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> [delay]
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1161480442 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1161480442 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> [repeat, delay]
>>>>
>>>>
>>>> *** truss of mountd on x4500-01 while attempting mount:
>>>>
>>>> # truss -Dfip 28717
>>>> 28717:   6.8156 pollsys(0x080CAE38, 9, 0x00000000, 0x00000000)  = 1
>>>> 28717:   0.0002 lwp_kill(788, SIG#0)                            Err#3 ESRCH
>>>> 28717:   0.0001 lwp_create(0x08047B90, LWP_DETACHED|LWP_SUSPENDED,
>>>> 0x08047DB0) = 791
>>>> 28717/1:         0.0002 lwp_continue(791)                               = 0
>>>> 28717/791:       6.8159 lwp_create()    (returning as new lwp ...)      = 0
>>>> 28717/1:         0.0001 fxstat(2, 7, 0x08047CB0)                        = 0
>>>> 28717/791:       0.0003 setustack(0xFECD1A60)
>>>> 28717/1:         0.0000 getmsg(7, 0x08047D8C, 0x080CC018, 0x08047DAC)   = 0
>>>> 28717/791:       0.0001 schedctl()
>>>> = 0xFEFB2010
>>>> 28717/1:         0.0001 open("/dev/udp", O_RDONLY)                      = 
>>>> 16
>>>> 28717/1:         0.0001 ioctl(16, SIOCTMYADDR, 0x08047CA8)              = 0
>>>> 28717/1:         0.0001 close(16)                                       = 0
>>>> 28717/1:         0.0000 fxstat(2, 7, 0x08047C40)                        = 0
>>>> 28717/1:         0.0000 putmsg(7, 0x08047D18, 0x080CC018, 0)            = 0
>>>> 28717/1:         0.0001 write(14, "F0", 1)                              = 1
>>>> 28717/791:       0.0003 pollsys(0x080CAE38, 8, 0x00000000, 0x00000000)  = 1
>>>> 28717/791:       0.0000 read(13, "F0", 16)                              = 1
>>>> 28717/791:       0.0001 pollsys(0x080CAE38, 9, 0x00000000, 0x00000000)  = 1
>>>> 28717/791:       0.0001 lwp_unpark(1)                                   = 0
>>>> 28717/1:         0.0002 lwp_park(0x00000000, 0)                         = 0
>>>> 28717/791:       0.0000 fxstat(2, 7, 0xFEA3FE40)                        = 0
>>>> 28717/791:       0.0001 getmsg(7, 0xFEA3FF20, 0x080CC018, 0xFEA3FF40)   = 0
>>>> 28717/791:       0.0001 open("/dev/udp", O_RDONLY)                      = 
>>>> 16
>>>> 28717/791:       0.0000 ioctl(16, SIOCTMYADDR, 0xFEA3FE38)              = 0
>>>> 28717/791:       0.0001 close(16)                                       = 0
>>>> 28717/791:       0.0000 write(14, " E", 1)                              = 1
>>>> 28717/1:         0.0003 pollsys(0x080CAE38, 8, 0x00000000, 0x00000000)  = 1
>>>> 28717/791:       0.0001 getuid()
>>>> = 0 [0]
>>>> 28717/1:         0.0001 read(13, " E", 16)                              = 1
>>>> 28717/791:       0.0000 getuid()
>>>> = 0 [0]
>>>> 28717/791:       0.0001 door_info(15, 0xFEA3F360)                       = 0
>>>> 28717/791:       0.0001 door_call(15, 0xFEA3F3B8)                       = 0
>>>> 28717/791:       0.0000 resolvepath("/export/www", "/export/www", 1024) = 
>>>> 18
>>>> 28717/791:       0.0001 xstat(2, "/etc/dfs/sharetab", 0xFEA3F6B8)       = 0
>>>> 28717/791:       0.0001 nfssys(20, 0xFEA3F860)                          = 0
>>>> 28717/791:       0.0000 fxstat(2, 7, 0xFEA3F6F0)                        = 0
>>>> 28717/791:       0.0000 putmsg(7, 0xFEA3F7C8, 0x080CC018, 0)            = 0
>>>> 28717/791:       0.0001 lwp_sigmask(SIG_SETMASK, 0xFFBFFEFF, 0x0000FFF7)
>>>> = 0xFFBFFEFF [0x0000FFFF]
>>>> 28717/791:       0.0000 lwp_exit()
>>>>
>>>> [pause]
>>>>
>>>>
>>>>
>>>> What IS somewhat amusing though, even though I can not mount it again
>>>> using TCP but if I change to using UDP it will mount just fine. We
>>>> changed most servers to using UDP and it seems to hang less, but it will
>>>> still eventually hang.
>>>>
>>>> # mount -o proto=udp /export/www
>>>> # df -h
>>>> x4500-01-vip:/export/www
>>>>                         984G    73G   901G     8%    /export/www
>>>>
>>>>
>>>> Successful mount proto=udp snoop:
>>>>
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1161480442 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1161480442 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Rst Ack=0 Seq=1161480443
>>>> Len=0 Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Rst Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Syn Ack=1118215538
>>>> Seq=4284552306 Len=0 Win=49640 Options=<mss 1460,nop,wscale
>>>> 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Rst Ack=1118215538
>>>> Seq=4284552307 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100005 (MOUNT)
>>>> vers=3 proto=UDP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=39967
>>>> 172.20.12.16 -> 172.20.12.220 MOUNT3 C Null
>>>> 172.20.12.221 -> 172.20.12.16 MOUNT3 R Null
>>>> 172.20.12.16 -> 172.20.12.220 MOUNT3 C Mount /export/www
>>>> 172.20.12.221 -> 172.20.12.16 MOUNT3 R Mount OK FH=D502 Auth=unix
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100003 (NFS) vers=3
>>>> proto=UDP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=2049
>>>> 172.20.12.16 -> 172.20.12.220 NFS C NULL3
>>>> 172.20.12.221 -> 172.20.12.16 NFS R NULL3
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100003 (NFS) vers=3
>>>> proto=UDP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=2049
>>>> 172.20.12.16 -> 172.20.12.220 NFS C NULL3
>>>> 172.20.12.221 -> 172.20.12.16 NFS R NULL3
>>>> 172.20.12.16 -> 172.20.12.220 NFS C FSINFO3 FH=D502
>>>> 172.20.12.221 -> 172.20.12.16 NFS R FSINFO3 OK
>>>> 172.20.12.16 -> 172.20.12.220 NFS C FSSTAT3 FH=D502
>>>> 172.20.12.221 -> 172.20.12.16 NFS R FSSTAT3 OK
>>>> 172.20.12.16 -> 172.20.12.220 NFS C FSSTAT3 FH=D502
>>>> 172.20.12.221 -> 172.20.12.16 NFS R FSSTAT3 OK
>>>>
>>>>
>>>> Attempt to re-mount using TCP again, for fun
>>>>
>>>> # umount /export/www
>>>> # mount /export/www
>>>> NFS server x4500-01-vip not responding still trying
>>>>
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100005 (MOUNT)
>>>> vers=3 proto=UDP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=39967
>>>> 172.20.12.16 -> 172.20.12.220 MOUNT3 C Null
>>>> 172.20.12.221 -> 172.20.12.16 MOUNT3 R Null
>>>> 172.20.12.16 -> 172.20.12.220 MOUNT3 C Mount /export/www
>>>> 172.20.12.221 -> 172.20.12.16 MOUNT3 R Mount OK FH=D502 Auth=unix
>>>> 172.20.12.16 -> 172.20.12.220 PORTMAP C GETPORT prog=100003 (NFS) vers=3
>>>> proto=TCP
>>>> 172.20.12.221 -> 172.20.12.16 PORTMAP R GETPORT port=2049
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54093 Syn Seq=2389376336
>>>> Len=0 Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54093 S=2049 Syn Ack=2389376337
>>>> Seq=997480070 Len=0 Win=49640 Options=<mss 1460,nop,wscale 
>>>> 0,nop,nop,sackOK>
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54093 Ack=997480071
>>>> Seq=2389376337 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 NFS C NULL3
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54093 S=2049 Ack=2389376457
>>>> Seq=997480071 Len=0 Win=49520
>>>> 172.20.12.220 -> 172.20.12.16 NFS R NULL3
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54093 Ack=997480099
>>>> Seq=2389376457 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54093 Fin Ack=997480099
>>>> Seq=2389376457 Len=0 Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54093 S=2049 Ack=2389376458
>>>> Seq=997480099 Len=0 Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=54093 S=2049 Fin Ack=2389376458
>>>> Seq=997480099 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=54093 Ack=997480100
>>>> Seq=2389376458 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Rst Ack=0 Seq=1240043383
>>>> Len=0 Win=49640
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Rst Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1249838073 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1240043383
>>>> Seq=99287825 Len=0 Win=49640
>>>> 172.20.12.16 -> 172.20.12.220 TCP D=2049 S=664 Syn Seq=1249838073 Len=0
>>>> Win=49640 Options=<mss 1460,nop,wscale 0,nop,nop,sackOK>
>>>> 172.20.12.220 -> 172.20.12.16 TCP D=664 S=2049 Ack=1240043383
>>>> Seq=99287825 Len=0 Win=49640
>>>>
>>>>
>>>> So, TCP is hung until reboot. If I reboot the NFS client it will mount
>>>> TCP just fine again. When both UDP and TCP have hung there is nothing I
>>>> can do to make it mount. We never reboot the x4500's.
>>>>
>>>> So, since of the 40 odd NFS clients, we have to reboot about 6 every day
>>>> which is getting tedious, and worse than that, we do not always notice
>>>> it is stuck immediately.
>>>>
>>>> We have put Solaris 10 10/08 on some NFS clients as well, but it is too
>>>> early to know if it fixes anything. We will most likely also try 10/08
>>>> on the x4500, but that is a much larger task.
>>>>
>>>> Are there any NFS related patches we should explore?
>>>>
>>>> Sorry for the length of this email, I wanted to include as much details
>>>> as possible and show I have tried most things in an attempt to discover
>>>> where the trouble lies.
>>>>
>>>> Other Google results hinted on running out of secure ports, but netstat
>>>> shows no indication of that as far as I can tell. No entries for the
>>>> hung NFS client on the x4500. The NFS client has a relatively small
>>>> netstat -na, with the exception of 47 entries for "stream-ord".
>>>>
>>>>
>>>> We would appreciate any feedback on this issue, thank you.
>>>>
>>>>
>>>> Lund
>>>>
>>>>
>>>> *** Random commands while mount is hung:
>>>>
>>>> # showmount -e x4500-01-vip
>>>> export list for x4500-01-vip:
>>>> /export/mail    @172.20.12, at 172.20.15
>>>> /export/www     @172.20.12, at 172.20.15
>>>> /export/dovecot @172.20.12, at 172.20.15
>>>>
>>>>
>>>> # rpcinfo -m x4500-01-vip
>>>> PORTMAP (version 2) statistics
>>>> NULL    SET     UNSET   GETPORT         DUMP    CALLIT
>>>> 0       0/0     0/0     1503694/1503838 0       0/0
>>>>
>>>> PMAP_GETPORT call statistics
>>>> prog            vers    netid     success       failure
>>>> nlockmgr        4       udp       4342          0
>>>> status          1       tcp       2             0
>>>> nlockmgr        2       udp       42            0
>>>> nlockmgr        4       tcp       1433764       0
>>>> nfs             3       udp       346           0
>>>> nfs             3       tcp       400           0
>>>> status          1       udp       49            0
>>>> mountd          1       udp       79            2
>>>> mountd          1       tcp       11            2
>>>> mountd          3       udp       654           113
>>>> rquotad         1       udp       64001         23
>>>> metad           2       tcp       3             0
>>>> smserverd       1       tcp       0             1
>>>> smserverd       1       udp       0             1
>>>> 300598          1       udp       1             1
>>>> 300598          1       tcp       0             1
>>>>
>>>> RPCBIND (version 3) statistics
>>>> NULL    SET     UNSET   GETADDR DUMP    CALLIT  TIME    U2T     T2U
>>>> 0       0/0     0/0     2/2     0       0/0     0       0       0
>>>>
>>>> RPCB_GETADDR (version 3) call statistics
>>>> prog            vers    netid     success       failure
>>>> status          1       ticotsord 1             0
>>>> 100133          1       ticotsord 1             0
>>>>
>>>> RPCBIND (version 4) statistics
>>>> NULL    SET     UNSET   GETADDR DUMP    CALLIT  TIME    U2T     T2U
>>>> 0       99/99   115/115 1/2     0       0/0     0       0       0
>>>> VERADDR INDRECT GETLIST GETSTAT
>>>> 0       0       1       1
>>>>
>>>> RPCB_GETADDR (version 4) call statistics
>>>> prog            vers    netid     success       failure
>>>> smserverd       1       ticlts    1             1
>>>>
>>>>
>>>> # rpcinfo -T tcp x4500-01-vip 100005 3
>>>> program 100005 version 3 ready and waiting
>>>>
>>>>
>>>>
> 

-- 
Jorgen Lundman       | <lundman at lundman.net>
Unix Administrator   | +81 (0)3 -5456-2687 ext 1017 (work)
Shibuya-ku, Tokyo    | +81 (0)90-5578-8500          (cell)
Japan                | +81 (0)3 -3375-1767          (home)

Reply via email to