NFSv4.1: Clean up session draining

Coalesce nfs4_check_drain_bc_complete and nfs4_check_drain_fc_complete
into a single function that can be called when the slot table is known
to be empty, then change nfs4_callback_free_slot() and nfs4_free_slot()
to use it.

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
This commit is contained in:
Trond Myklebust 2012-11-23 13:09:38 -05:00
parent 69d206b5b3
commit 5d63360dd8
5 changed files with 25 additions and 35 deletions

View file

@ -335,6 +335,14 @@ int nfs41_discover_server_trunking(struct nfs_client *clp,
struct nfs_client **, struct rpc_cred *);
extern void nfs4_schedule_session_recovery(struct nfs4_session *, int);
extern void nfs41_server_notify_target_slotid_update(struct nfs_client *clp);
extern void nfs4_session_drain_complete(struct nfs4_session *session,
struct nfs4_slot_table *tbl);
static inline bool nfs4_session_draining(struct nfs4_session *session)
{
return !!test_bit(NFS4_SESSION_DRAINING, &session->session_state);
}
#else
static inline void nfs4_schedule_session_recovery(struct nfs4_session *session, int err)
{