From: Ekansh Gupta <[email protected]>

Make fastrpc_buf_free() a no-op when passed a NULL pointer, allowing
callers to avoid open-coded NULL checks.

Co-developed-by: Ekansh Gupta <[email protected]>
Signed-off-by: Ekansh Gupta <[email protected]>
Signed-off-by: Jianping Li <[email protected]>
---
 drivers/misc/fastrpc.c | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/drivers/misc/fastrpc.c b/drivers/misc/fastrpc.c
index 9c70788afa0f..82bfbf342725 100644
--- a/drivers/misc/fastrpc.c
+++ b/drivers/misc/fastrpc.c
@@ -416,6 +416,9 @@ static int fastrpc_map_lookup(struct fastrpc_user *fl, int 
fd,
 
 static void fastrpc_buf_free(struct fastrpc_buf *buf)
 {
+       if (!buf)
+               return;
+
        dma_free_coherent(buf->dev, buf->size, buf->virt,
                          fastrpc_ipa_to_dma_addr(buf->fl->cctx, 
buf->dma_addr));
        kfree(buf);
@@ -512,8 +515,7 @@ static void fastrpc_context_free(struct kref *ref)
        for (i = 0; i < ctx->nbufs; i++)
                fastrpc_map_put(ctx->maps[i]);
 
-       if (ctx->buf)
-               fastrpc_buf_free(ctx->buf);
+       fastrpc_buf_free(ctx->buf);
 
        spin_lock_irqsave(&cctx->lock, flags);
        idr_remove(&cctx->ctx_idr, ctx->ctxid >> 4);
@@ -1564,8 +1566,7 @@ static int fastrpc_device_release(struct inode *inode, 
struct file *file)
        list_del(&fl->user);
        spin_unlock_irqrestore(&cctx->lock, flags);
 
-       if (fl->init_mem)
-               fastrpc_buf_free(fl->init_mem);
+       fastrpc_buf_free(fl->init_mem);
 
        list_for_each_entry_safe(ctx, n, &fl->pending, node) {
                list_del(&ctx->node);
-- 
2.43.0

Reply via email to