From: Andy Adamson Date: Fri, 4 Dec 2009 20:55:38 +0000 (-0500) Subject: nfs41: nfs41: fix state manager deadlock in session reset X-Git-Tag: v2.6.33-rc1~287^2^2~33 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ea028ac92541ac30bf202ed94cb53eec2ea0c9d6;p=pandora-kernel.git nfs41: nfs41: fix state manager deadlock in session reset If the session is reset during state recovery, the state manager thread can sleep on the slot_tbl_waitq causing a deadlock. Add a completion framework to the session. Have the state manager thread set a new session state (NFS4CLNT_SESSION_DRAINING) and wait for the session slot table to drain. Signal the state manager thread in nfs41_sequence_free_slot when the NFS4CLNT_SESSION_DRAINING bit is set and the session is drained. Reported-by: Trond Myklebust Signed-off-by: Andy Adamson Signed-off-by: Trond Myklebust --- Reading git-diff-tree failed