diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-01 12:06:44 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2007-10-09 17:20:40 -0400 |
commit | b6e9c713f5c526a85893c6e0ab1d5d6c6f1ab479 (patch) | |
tree | cee9c5bc57c4c5bb0638508786513ea4cdb390fc /net/sunrpc/clnt.c | |
parent | 2199700f1d660494d2552278354422c51becb686 (diff) | |
download | blackbird-op-linux-b6e9c713f5c526a85893c6e0ab1d5d6c6f1ab479.tar.gz blackbird-op-linux-b6e9c713f5c526a85893c6e0ab1d5d6c6f1ab479.zip |
SUNRPC: Don't call xprt_release() if call_allocate fails
It completely fouls up the RPC call statistics, and serves no useful
purpose.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/clnt.c')
-rw-r--r-- | net/sunrpc/clnt.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c index e9866fc93df1..e6a2678ecec3 100644 --- a/net/sunrpc/clnt.c +++ b/net/sunrpc/clnt.c @@ -846,8 +846,7 @@ call_allocate(struct rpc_task *task) dprintk("RPC: %5u rpc_buffer allocation failed\n", task->tk_pid); if (RPC_IS_ASYNC(task) || !signalled()) { - xprt_release(task); - task->tk_action = call_reserve; + task->tk_action = call_allocate; rpc_delay(task, HZ>>4); return; } |