blocking nfs call

Friedemann Becker Friedemann.Becker at student.uni-tuebingen.de
Sat Apr 19 13:56:18 PDT 2003


I tried to mount /usr/src /usr/obj and /usr/gnats from my home machine
on a remote computer, it is a router that hangs on reboot and I have
no time to get there soon, so I have to solve it per ssh.

The problem is, the calls in mount and umount seem to be blocking
calls, and when something goes wrong (appearently it did ;-),
mount/umount does never return and can't be killed.
this is the ps ax output of the dead processes

14672  ??  D      0:00.01 find /usr -xdev -type f ( -perm -u+x -or
-perm -g+x -or -perm -o+x ) ( -perm
15833  ??  Is     0:00.12 /usr/sbin/sendmail -FCronDaemon -odi -oem
-oi -t
15907  ??  D      0:14.14 find /usr -xdev -type f ( -perm -u+x -or
-perm -g+x -or -perm -o+x ) ( -perm
14230  p0- D      0:25.57 umount /usr/obj
15302  p0- D      0:00.05 umount /usr/gnats
19156  p0  D+     0:00.00 egrep D (bash)
14268  p1- DX     0:00.05 umount /usr/obj
15122  p1- D      0:00.05 mount /usr/obj
15139  p1  Ds     0:00.28 -bash (bash)
15208  p1- D      0:00.05 umount /usr/obj
15211  p1- D      0:00.05 umount -f /usr/obj
15213  p1  Ds+    0:20.27 -bash (bash)

note, that all of them are in D status (blocking disk call), but i'm
not sure, if this is convenient for nfs calls. maybe a nfs call should
return after a timeout period or something, but all those dead mounts
and umounts are rotting since days now. additionally locate.updatedb,
periodic/daily, cron and some more are started every day and some of
them won't die too.
So, what can I do: attaching with gdb does not work - the processes
don't respond to interupts while in kernel mode.
Every process, trying to access one of the above directories will
block too.

Friedemann



More information about the freebsd-hackers mailing list