]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
NFSv4: nfs4_locku_done must release the sequence id
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Mon, 29 Oct 2012 22:53:23 +0000 (18:53 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 17 Nov 2012 21:14:21 +0000 (13:14 -0800)
commit 2b1bc308f492589f7d49012ed24561534ea2be8c upstream.

If the state recovery machinery is triggered by the call to
nfs4_async_handle_error() then we can deadlock.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/nfs/nfs4proc.c

index c7229059a669f6e775e445230d963f6367bc980a..d5d540016de44aef21bd31af1028ee8950ac960f 100644 (file)
@@ -4116,6 +4116,7 @@ static void nfs4_locku_done(struct rpc_task *task, void *data)
                                nfs_restart_rpc(task,
                                                 calldata->server->nfs_client);
        }
+       nfs_release_seqid(calldata->arg.seqid);
 }
 
 static void nfs4_locku_prepare(struct rpc_task *task, void *data)