Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 1 Mar 1998 10:36:38 -0500 (EST)
From:      Brian Tao <taob@nbc.netcom.ca>
To:        FREEBSD-CURRENT <freebsd-current@FreeBSD.ORG>
Subject:   Lockup in inode/nfsrcv on loopback NFS mount
Message-ID:  <Pine.GSO.3.95.980228233143.22812B-100000@tor-adm1>

next in thread | raw e-mail | index | archive | help
    Could someone with a recent -current (I'm using Feb 28's) try
exporting a filesystem, mounting it via localhost and copying a large
file (a few megabytes will do) to the NFS-mounted filesystem?  I've
seen results from only NFS locking up, to all filesystems hanging, to
the entire system freezing.

|  # showmount -e
|  Exports list on localhost:
|  /usr/local                         Everyone
|  
|  # mount localhost:/usr/local /mnt
|  # df
|  Filesystem           1K-blocks     Used    Avail Capacity  Mounted on
|  /dev/sd0a                98479    19940    70661    22%    /
|  /dev/sd0s2e             148703    71996    64811    53%    /usr
|  /dev/sd0s2f              73855     7499    60448    11%    /var
|  /dev/sd0s2g            1525999   781757   622163    56%    /usr/local
|  /dev/sd0s2h             762991   235510   466442    34%    /usr/X11R6
|  /dev/sd0s2d             452948   216517   200196    52%    /home
|  procfs                       4        4        0   100%    /proc
|  localhost:/usr/local   1525999   781757   622163    56%    /mnt
|  
|  # cd /mnt/tmp
|  # dd if=/dev/zero of=blah
|  ^C^C^C^C

    At this point, the NFS server processes are waiting in inode, and
the client processes are waiting in either getblk or nfsrcv.  Syslog
does manage to log a few "/kernel: nfs server localhost:/usr/local: not
responding".  The first sync(8) command (if I can get to a shell) will
never exit (waiting on nfsrcv).  A truss on the hung process shows the
last call was a write().

    I don't have another machine here to try NFS over Ethernet, nor a
machine with a different -current to try another loopback NFS mount.


  UID   PID  PPID CPU PRI NI   VSZ  RSS WCHAN  STAT  TT       TIME COMMAND
    0     0     0   0 -18  0     0    0 sched  DLs   ??    0:00.01  (swapper)
    0     1     0   0  10  0   484  132 wait   Is    ??    0:00.03 /sbin/init --
    0     2     0   0 -18  0     0    0 psleep DL    ??    0:01.12  (pagedaemon)
    0     3     0   0  28  0     0    0 psleep DL    ??    0:00.00  (vmdaemon)
    0     4     0   0  28  0     0    0 update DL    ??    0:00.03  (update)
    0   100     1   0   2  0   768  360 select Is    ??    0:00.10 syslogd
    1   110     1   0   2  0   752  320 select Is    ??    0:00.01 portmap
    0   118     1   0   2  0   464  148 select Is    ??    0:00.02 mountd -r
    0   121     1  25   2  0   312   64 accept Is    ??    0:00.01 nfsd: master (nfsd)
    0   125   121   0 -14  0   292   44 inode  D     ??    0:00.00 nfsd: server (nfsd)
    0   126   121   0 -14  0   292   44 inode  D     ??    0:00.00 nfsd: server (nfsd)
    0   127   121  19  -1  0   292   44 nfsrcv D     ??    0:02.03 nfsd: server (nfsd)
    0   128   121   5 -14  0   292   44 inode  D     ??    0:01.35 nfsd: server (nfsd)
    0   132     1   9   2  0   204   16 sbwait D     ??    0:01.11 nfsiod -n 4
    0   133     1   0  -1  0   204   16 nfsrcv D     ??    0:00.74 nfsiod -n 4
    0   134     1   0  -1  0   204   16 nfsrcv D     ??    0:00.00 nfsiod -n 4
    0   135     1   0  -1  0   204   16 nfsrcv D     ??    0:00.00 nfsiod -n 4
    0   150     1   0  10  0   920  404 nanslp Is    ??    0:00.04 cron
    0   154     1  77  18  0  1144  392 pause  Is    ??    0:00.01 /usr/sbin/sendmail -q30m
    0   196     1  59   2  0  1004  324 accept Is    ??    0:02.23 /usr/local/sbin/sshd
    0   252   251   1   2  0  3516 1188 select Ss    ??    0:01.86 SCREEN (screen)
 1000   253   252   0  18  0  1304  676 pause  Is    p1    0:00.34 -usr/local/bin/tcsh
 1000   269   253   5  10  0   760  308 piocwa I+    p1    0:00.12 truss cp yamato.the-birth.mp3 blah
 1000   270   269   8  -5  0   272   40 getblk D+    p1    0:00.19 cp yamato.the-birth.mp3
 1000   255   252   5  18  0  1300  548 pause  Is    p2    0:00.28 -usr/local/bin/tcsh
 1000   257   255   1   2  0  1512  564 select S+    p2    0:01.93 top
 1000   256   252   0  18  0  1308  944 pause  Ss    p3    0:00.55 -usr/local/bin/tcsh
 1000   273   256   1  -1  0   136    8 nfsrcv D     p3    0:00.01 sync
 1000   298   256   1  28  0   668  276 -      R+    p3    0:00.00 ps -lax

-- 
Brian Tao (BT300, taob@netcom.ca)
"Though this be madness, yet there is method in't"



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.3.95.980228233143.22812B-100000>