2012-05-10 20:25:04

by Orion Poplawski

[permalink] [raw]
Subject: Cannot unmount nfs4 sec=krb5 mount if network is down

See https://bugzilla.redhat.com/show_bug.cgi?id=820707

We're using nfs4/krb5 mounts via autofs (although I get the same result without
autofs and mounting the directory directly):

earth:/export/home/orion on /home/orion type nfs4
(rw,noatime,vers=4,rsize=32768,wsize=32768,namlen=255,acregmin=1,acregmax=1,
acdirmin=1,acdirmax=1,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=krb5,
clientaddr=10.10.30.4,minorversion=0,local_lock=none,addr=10.10.10.1)

If the network is disconnected it is impossible to unmount, even if no
processes are accessing the mount. umount -f and umount -l both hang on
readlink("/home/orion"). At this point it is impossible to shutdown cleanly
and you must hold the power button down until the machine powers off.

I can unmount non-krb5 nfs4/nfs3 mounts just fine.

I tried running rpc.gssd and nfsidmap with -vvv but nothing else showed up in
the log.

Sometimes get:

May 10 12:00:10 makani kernel: [ 2018.272071] nfs: server earth not responding,
still trying

but that's it. I can exit umount -l with ctrl-c.

Version-Release number of selected component (if applicable):
nfs-utils-1.2.5-15.fc17.x86_64
3.3.4-5.fc17.x86_64

How reproducible:
Every time

Steps to Reproduce:
1. mount nfs4 sec=krb5 mount
2. pull network
3. umount -l <mount>

Actual results:
umount -l hangs

Expected results:
umount succeeds, perhaps with delay.