Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60f00153 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFSv4.1: Clean up nfs4_recall_slot()



Move the test for nfs4_has_session out of the nfs4_state_manager()

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 1a2dd948
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -1792,12 +1792,14 @@ out:

static int nfs4_recall_slot(struct nfs_client *clp)
{
	struct nfs4_slot_table *fc_tbl = &clp->cl_session->fc_slot_table;
	struct nfs4_channel_attrs *fc_attrs = &clp->cl_session->fc_attrs;
	struct nfs4_slot_table *fc_tbl;
	struct nfs4_slot *new, *old;
	int i;

	if (!nfs4_has_session(clp))
		return 0;
	nfs4_begin_drain_session(clp);
	fc_tbl = &clp->cl_session->fc_slot_table;
	new = kmalloc(fc_tbl->target_max_slots * sizeof(struct nfs4_slot),
		      GFP_NOFS);
        if (!new)
@@ -1810,7 +1812,7 @@ static int nfs4_recall_slot(struct nfs_client *clp)
	fc_tbl->slots = new;
	fc_tbl->max_slots = fc_tbl->target_max_slots;
	fc_tbl->target_max_slots = 0;
	fc_attrs->max_reqs = fc_tbl->max_slots;
	clp->cl_session->fc_attrs.max_reqs = fc_tbl->max_slots;
	spin_unlock(&fc_tbl->slot_tbl_lock);

	kfree(old);
@@ -1920,8 +1922,7 @@ static void nfs4_state_manager(struct nfs_client *clp)
		}

		/* Recall session slots */
		if (test_and_clear_bit(NFS4CLNT_RECALL_SLOT, &clp->cl_state)
		   && nfs4_has_session(clp)) {
		if (test_and_clear_bit(NFS4CLNT_RECALL_SLOT, &clp->cl_state)) {
			section = "recall slot";
			status = nfs4_recall_slot(clp);
			if (status < 0)