diff options
Diffstat (limited to 'net/sunrpc/backchannel_rqst.c')
-rw-r--r-- | net/sunrpc/backchannel_rqst.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/sunrpc/backchannel_rqst.c b/net/sunrpc/backchannel_rqst.c index a9c0bbccad6b..80aa881e38e3 100644 --- a/net/sunrpc/backchannel_rqst.c +++ b/net/sunrpc/backchannel_rqst.c | |||
@@ -191,7 +191,9 @@ void xprt_destroy_backchannel(struct rpc_xprt *xprt, unsigned int max_reqs) | |||
191 | 191 | ||
192 | dprintk("RPC: destroy backchannel transport\n"); | 192 | dprintk("RPC: destroy backchannel transport\n"); |
193 | 193 | ||
194 | BUG_ON(max_reqs == 0); | 194 | if (max_reqs == 0) |
195 | goto out; | ||
196 | |||
195 | spin_lock_bh(&xprt->bc_pa_lock); | 197 | spin_lock_bh(&xprt->bc_pa_lock); |
196 | xprt_dec_alloc_count(xprt, max_reqs); | 198 | xprt_dec_alloc_count(xprt, max_reqs); |
197 | list_for_each_entry_safe(req, tmp, &xprt->bc_pa_list, rq_bc_pa_list) { | 199 | list_for_each_entry_safe(req, tmp, &xprt->bc_pa_list, rq_bc_pa_list) { |
@@ -202,6 +204,7 @@ void xprt_destroy_backchannel(struct rpc_xprt *xprt, unsigned int max_reqs) | |||
202 | } | 204 | } |
203 | spin_unlock_bh(&xprt->bc_pa_lock); | 205 | spin_unlock_bh(&xprt->bc_pa_lock); |
204 | 206 | ||
207 | out: | ||
205 | dprintk("RPC: backchannel list empty= %s\n", | 208 | dprintk("RPC: backchannel list empty= %s\n", |
206 | list_empty(&xprt->bc_pa_list) ? "true" : "false"); | 209 | list_empty(&xprt->bc_pa_list) ? "true" : "false"); |
207 | } | 210 | } |