From 4637b1ad8ed685efe7f18ef2d868b4e64edf07e9 Mon Sep 17 00:00:00 2001 From: Trond Myklebust Date: Thu, 1 Dec 2011 14:16:17 -0500 Subject: [PATCH] --- yaml --- r: 276890 b: refs/heads/master c: c25573b5134294c0be82bfaecc6d08136835b271 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/sunrpc/xprt.c | 10 ++++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 028d45745b73..bfa9b4848cfb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7fdcf13b292e8b2e38e42de24be2503e37b2cf97 +refs/heads/master: c25573b5134294c0be82bfaecc6d08136835b271 diff --git a/trunk/net/sunrpc/xprt.c b/trunk/net/sunrpc/xprt.c index f4385e45a5fc..c64c0ef519b5 100644 --- a/trunk/net/sunrpc/xprt.c +++ b/trunk/net/sunrpc/xprt.c @@ -995,13 +995,11 @@ static void xprt_alloc_slot(struct rpc_task *task) static void xprt_free_slot(struct rpc_xprt *xprt, struct rpc_rqst *req) { - if (xprt_dynamic_free_slot(xprt, req)) - return; - - memset(req, 0, sizeof(*req)); /* mark unused */ - spin_lock(&xprt->reserve_lock); - list_add(&req->rq_list, &xprt->free); + if (!xprt_dynamic_free_slot(xprt, req)) { + memset(req, 0, sizeof(*req)); /* mark unused */ + list_add(&req->rq_list, &xprt->free); + } rpc_wake_up_next(&xprt->backlog); spin_unlock(&xprt->reserve_lock); }