All of lore.kernel.org
 help / color / mirror / Atom feed
From: Orion Poplawski <orion@cora.nwra.com>
To: linux-nfs@vger.kernel.org
Subject: umount(,MNT_DETACH) for nfsv4 hangs when using sec=krb5 and network is down
Date: Wed, 19 Dec 2012 20:47:07 +0000 (UTC)	[thread overview]
Message-ID: <loom.20121219T214634-616@post.gmane.org> (raw)

nfs4 mounts with sec=krb5 cannot be unmounted with the network down, even with
umount -l because umount() with MNT_DETACH set will hang, presumably somewhere
in the gss stack.

A successful umount yields the following packet trace:

  1 0.000000000   10.10.20.2 -> 10.10.10.1   NFS 218 V4 Call GETATTR FH:0x3b470ee7
  2 0.000236000   10.10.10.1 -> 10.10.20.2   NFS 318 V4 Reply (Call In 1) GETATTR
  3 0.000282000   10.10.20.2 -> 10.10.10.1   TCP 66 943 > nfs [ACK] Seq=153
Ack=253 Win=331 Len=0 TSval=3468186 TSecr=878557922
  4 0.008761000   10.10.20.2 -> 10.10.10.1   TCP 66 943 > nfs [FIN, ACK] Seq=153
Ack=253 Win=331 Len=0 TSval=3468195 TSecr=878557922
  5 0.008923000   10.10.10.1 -> 10.10.20.2   TCP 66 nfs > 943 [FIN, ACK] Seq=253
Ack=154 Win=683 Len=0 TSval=878557930 TSecr=3468195
  6 0.008970000   10.10.20.2 -> 10.10.10.1   TCP 66 943 > nfs [ACK] Seq=154
Ack=254 Win=331 Len=0 TSval=3468195 TSecr=878557930

So my guess is that something in the gss stack is preventing the GETATTR call
from succeeding as unmounting succeeds without sec=krb5.  Although running
rpc.gssd and rpcidmap with -vvvv does not appear to produce any output.  A
successful unmount produces:

Dec 19 13:42:44 orca rpc.gssd[18495]: destroying client
/var/lib/nfs/rpc_pipefs/nfs/clnt27
Dec 19 13:42:44 orca rpc.gssd[18495]: destroying client
/var/lib/nfs/rpc_pipefs/nfs/clnt24

However, we need someway to be able to drop mounts after the network connection
has been removed.  This behavior is causing sever problems for our laptop and
vpn users.

Tested with:

3.6.11-3.fc18
nfs-utils-1.2.7-2.fc18

I've also filed https://bugzilla.redhat.com/show_bug.cgi?id=888942

-- 
Orion Poplawski
Technical Manager                     303-415-9701 x222
NWRA, Boulder Office                  FAX: 303-415-9702
3380 Mitchell Lane                       orion@nwra.com
Boulder, CO 80301                   http://www.nwra.com


             reply	other threads:[~2012-12-19 20:47 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-19 20:47 Orion Poplawski [this message]
2012-12-19 21:08 ` umount(,MNT_DETACH) for nfsv4 hangs when using sec=krb5 and network is down Myklebust, Trond
2012-12-19 21:50   ` Orion Poplawski
2012-12-19 22:19     ` Myklebust, Trond
2012-12-20 20:31       ` Orion Poplawski
2012-12-20 20:47         ` Myklebust, Trond
2012-12-20 21:52           ` Orion Poplawski
2012-12-20 22:01             ` Myklebust, Trond
2013-02-13 17:58               ` Orion Poplawski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=loom.20121219T214634-616@post.gmane.org \
    --to=orion@cora.nwra.com \
    --cc=linux-nfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.