[PATCH 30/61] net/sunrpc: Prefer IS_ERR_OR_NULL over manual NULL check

Philipp Hahn
2026-03-10T11:55:40Z

Prefer using IS_ERR_OR_NULL() over using IS_ERR() and a manual NULL
check.

Change generated with coccinelle.

To: Trond Myklebust <trondmy@kernel.org>
To: Anna Schumaker <anna@kernel.org>
To: Chuck Lever <chuck.lever@oracle.com>
To: Jeff Layton <jlayton@kernel.org>
To: NeilBrown <neil@brown.name>
To: Olga Kornievskaia <okorniev@redhat.com>
To: Dai Ngo <Dai.Ngo@oracle.com>
To: Tom Talpey <tom@talpey.com>
To: "David S. Miller" <davem@davemloft.net>
To: Eric Dumazet <edumazet@google.com>
To: Jakub Kicinski <kuba@kernel.org>
To: Paolo Abeni <pabeni@redhat.com>
To: Simon Horman <horms@kernel.org>
Cc: linux-nfs@vger.kernel.org
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Philipp Hahn <phahn-oss@avm.de>
---
net/sunrpc/xprtrdma/svc_rdma_transport.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/net/sunrpc/xprtrdma/svc_rdma_transport.c b/net/sunrpc/xprtrdma/svc_rdma_transport.c
index 9b623849723ed0eb74b827881c6f32d3434c891b..b4d03e59a8202f20360cff1e2e79b1e325396517 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_transport.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_transport.c
@@ -578,7 +578,7 @@ static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt)
errout:
/* Take a reference in case the DTO handler runs */
svc_xprt_get(&newxprt->sc_xprt);
- if (newxprt->sc_qp && !IS_ERR(newxprt->sc_qp))
+ if (!IS_ERR_OR_NULL(newxprt->sc_qp))
ib_destroy_qp(newxprt->sc_qp);
rdma_destroy_id(newxprt->sc_cm_id);
rpcrdma_rn_unregister(dev, &newxprt->sc_rn);
@@ -608,7 +608,7 @@ static void svc_rdma_free(struct svc_xprt *xprt)
might_sleep();

/* This blocks until the Completion Queues are empty */
- if (rdma->sc_qp && !IS_ERR(rdma->sc_qp))
+ if (!IS_ERR_OR_NULL(rdma->sc_qp))
ib_drain_qp(rdma->sc_qp);
flush_workqueue(svcrdma_wq);

@@ -619,16 +619,16 @@ static void svc_rdma_free(struct svc_xprt *xprt)
svc_rdma_recv_ctxts_destroy(rdma);

/* Destroy the QP if present (not a listener) */
- if (rdma->sc_qp && !IS_ERR(rdma->sc_qp))
+ if (!IS_ERR_OR_NULL(rdma->sc_qp))
ib_destroy_qp(rdma->sc_qp);

- if (rdma->sc_sq_cq && !IS_ERR(rdma->sc_sq_cq))
+ if (!IS_ERR_OR_NULL(rdma->sc_sq_cq))
ib_free_cq(rdma->sc_sq_cq);

- if (rdma->sc_rq_cq && !IS_ERR(rdma->sc_rq_cq))
+ if (!IS_ERR_OR_NULL(rdma->sc_rq_cq))
ib_free_cq(rdma->sc_rq_cq);

- if (rdma->sc_pd && !IS_ERR(rdma->sc_pd))
+ if (!IS_ERR_OR_NULL(rdma->sc_pd))
ib_dealloc_pd(rdma->sc_pd);

/* Destroy the CM ID */

--
2.43.0