[pnfs] [PATCH] [SQUASHME] nfsd41: sunrpc: do not wakeup_queued_task in call_transmit on backchannel path

Benny Halevy bhalevy at panasas.com
Sun Jun 8 06:24:14 EDT 2008


with the backchannel path, task->tk_client is NULL and there are no
pending waiters.  This breaks the following statement:
	rpc_wake_up_queued_task(&task->tk_xprt->pending, task);
that was introduced in fda13939 SUNRPC: Convert users of rpc_wake_up_task to use rpc_wake_up_queued_task

squash into 2ea3e395 nfs41: Add backchannel processing support to RPC state machine

Signed-off-by: Benny Halevy <bhalevy at panasas.com>
---
 net/sunrpc/clnt.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c
index 5227adf..cf8fdd9 100644
--- a/net/sunrpc/clnt.c
+++ b/net/sunrpc/clnt.c
@@ -1134,7 +1134,8 @@ call_transmit(struct rpc_task *task)
 	if (rpc_reply_expected(task))
 		return;
 	task->tk_action = rpc_exit_task;
-	rpc_wake_up_queued_task(&task->tk_xprt->pending, task);
+	if (task->tk_client != NULL)
+		rpc_wake_up_queued_task(&task->tk_xprt->pending, task);
 }
 
 /*
-- 
1.5.3.3



More information about the pNFS mailing list