static int rpcrdma_bc_setup_reps(struct rpcrdma_xprt *r_xprt,
                                 unsigned int count)
 {
-       struct rpcrdma_buffer *buffers = &r_xprt->rx_buf;
        struct rpcrdma_rep *rep;
-       unsigned long flags;
        int rc = 0;
 
        while (count--) {
                        break;
                }
 
-               spin_lock_irqsave(&buffers->rb_lock, flags);
-               list_add(&rep->rr_list, &buffers->rb_recv_bufs);
-               spin_unlock_irqrestore(&buffers->rb_lock, flags);
+               rpcrdma_recv_buffer_put(rep);
        }
 
        return rc;
 
        struct rpcrdma_ia *ia = &r_xprt->rx_ia;
        struct rpcrdma_ep *ep = &r_xprt->rx_ep;
        struct rpcrdma_rep *rep;
-       unsigned long flags;
        int rc;
 
        while (count--) {
-               spin_lock_irqsave(&buffers->rb_lock, flags);
+               spin_lock(&buffers->rb_lock);
                if (list_empty(&buffers->rb_recv_bufs))
                        goto out_reqbuf;
                rep = rpcrdma_buffer_get_rep_locked(buffers);
-               spin_unlock_irqrestore(&buffers->rb_lock, flags);
+               spin_unlock(&buffers->rb_lock);
 
                rc = rpcrdma_ep_post_recv(ia, ep, rep);
                if (rc)
        return 0;
 
 out_reqbuf:
-       spin_unlock_irqrestore(&buffers->rb_lock, flags);
+       spin_unlock(&buffers->rb_lock);
        pr_warn("%s: no extra receive buffers\n", __func__);
        return -ENOMEM;