Subject: Unmounting disappeared NFS mounts
To: None <tech-kern@netbsd.org>
From: Brian de Alwis <bsd@cs.ubc.ca>
List: tech-kern
Date: 03/14/2002 15:07:40
I have a laptop. When I'm plugged in at my office, I mount several
file-systems through NFS. I have my apm scripts setup to automatically
unmount any NFS file-systems on suspend:

	umount -a -f -t nfs

But if I've already pulled the ethernet before this happens, the
umount hangs as it tries to stat the mount name. Finding the `raw'
option, I changed it to execute:

    umount -f -t nfs -R <mountpoint>

But this hangs too. Doing a ktrace, I get:

  2286 umount   EMUL  "netbsd"
  2286 umount   RET   execve JUSTRETURN
  2286 umount   CALL  sync
  2286 umount   RET   sync 0
  [...]
  2286 umount   CALL  break(0x8079000)
  2286 umount   RET   break 0
  2286 umount   CALL  unmount(0xbfbfd928,0x80000)
  2286 umount   NAMI  "/stuff"

And it hangs. And since this hangs, the suspend doesn't finish, and
so the laptop doesn't turn off. Killing the /etc/apm/suspend script
will allow it to shutdown. And they don't seem to time out; I can
only get these to complete by re-connecting to the net (or rebooting,
of course).

So my question: what should I do? How do I umount these?

-- 
"Source code in files. How quaint." - Kent Beck
"Maybe this world is another planet's Hell." - Aldous Huxley