Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

svcrdma: xpt_bc_xprt is already clear in __svc_rdma_free()

svc_xprt_free() already "puts" the bc_xprt before calling the
transport's "free" method. No need to do it twice.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>

-7
-7
net/sunrpc/xprtrdma/svc_rdma_transport.c
··· 545 545 { 546 546 struct svcxprt_rdma *rdma = 547 547 container_of(work, struct svcxprt_rdma, sc_work); 548 - struct svc_xprt *xprt = &rdma->sc_xprt; 549 548 550 549 /* This blocks until the Completion Queues are empty */ 551 550 if (rdma->sc_qp && !IS_ERR(rdma->sc_qp)) 552 551 ib_drain_qp(rdma->sc_qp); 553 552 554 553 svc_rdma_flush_recv_queues(rdma); 555 - 556 - /* Final put of backchannel client transport */ 557 - if (xprt->xpt_bc_xprt) { 558 - xprt_put(xprt->xpt_bc_xprt); 559 - xprt->xpt_bc_xprt = NULL; 560 - } 561 554 562 555 svc_rdma_destroy_rw_ctxts(rdma); 563 556 svc_rdma_send_ctxts_destroy(rdma);