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

Commit 1e1093c7 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

NFSv4.1: Don't mess with task priorities in nfs41_setup_sequence



We want to preserve the rpc_task priority for things like writebacks,
that may have differing levels of urgency.

Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 104287cd
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -536,8 +536,6 @@ int nfs41_setup_sequence(struct nfs4_session *session,
	}
	}
	spin_unlock(&tbl->slot_tbl_lock);
	spin_unlock(&tbl->slot_tbl_lock);


	rpc_task_set_priority(task, RPC_PRIORITY_NORMAL);

	args->sa_slot = slot;
	args->sa_slot = slot;


	dprintk("<-- %s slotid=%d seqid=%d\n", __func__,
	dprintk("<-- %s slotid=%d seqid=%d\n", __func__,
@@ -556,7 +554,9 @@ int nfs41_setup_sequence(struct nfs4_session *session,
out_sleep:
out_sleep:
	/* Privileged tasks are queued with top priority */
	/* Privileged tasks are queued with top priority */
	if (args->sa_privileged)
	if (args->sa_privileged)
		rpc_task_set_priority(task, RPC_PRIORITY_PRIVILEGED);
		rpc_sleep_on_priority(&tbl->slot_tbl_waitq, task,
				NULL, RPC_PRIORITY_PRIVILEGED);
	else
		rpc_sleep_on(&tbl->slot_tbl_waitq, task, NULL);
		rpc_sleep_on(&tbl->slot_tbl_waitq, task, NULL);
	spin_unlock(&tbl->slot_tbl_lock);
	spin_unlock(&tbl->slot_tbl_lock);
	return -EAGAIN;
	return -EAGAIN;
+1 −0
Original line number Original line Diff line number Diff line
@@ -379,6 +379,7 @@ void rpc_sleep_on_priority(struct rpc_wait_queue *q, struct rpc_task *task,
	__rpc_sleep_on_priority(q, task, action, priority - RPC_PRIORITY_LOW);
	__rpc_sleep_on_priority(q, task, action, priority - RPC_PRIORITY_LOW);
	spin_unlock_bh(&q->lock);
	spin_unlock_bh(&q->lock);
}
}
EXPORT_SYMBOL_GPL(rpc_sleep_on_priority);


/**
/**
 * __rpc_do_wake_up_task - wake up a single rpc_task
 * __rpc_do_wake_up_task - wake up a single rpc_task