]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
misc: fastrpc: Fix dma_buf object leak in fastrpc_map_lookup
authorJunhao Xie <bigfoot@radxa.com>
Fri, 17 Oct 2025 08:39:06 +0000 (16:39 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Oct 2025 06:03:24 +0000 (08:03 +0200)
In fastrpc_map_lookup, dma_buf_get is called to obtain a reference to
the dma_buf for comparison purposes. However, this reference is never
released when the function returns, leading to a dma_buf memory leak.

Fix this by adding dma_buf_put before returning from the function,
ensuring that the temporarily acquired reference is properly released
regardless of whether a matching map is found.

Fixes: 9031626ade38 ("misc: fastrpc: Fix fastrpc_map_lookup operation")
Cc: stable@kernel.org
Signed-off-by: Junhao Xie <bigfoot@radxa.com>
Tested-by: Xilin Wu <sophon@radxa.com>
Rule: add
Link: https://lore.kernel.org/stable/48B368FB4C7007A7%2B20251017083906.3259343-1-bigfoot%40radxa.com
Link: https://patch.msgid.link/48B368FB4C7007A7+20251017083906.3259343-1-bigfoot@radxa.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/misc/fastrpc.c

index 621bce7e101c1a634a322e9666f0836234a41a6b..ee652ef01534a8658f1b1cb308bfb58a4821d95f 100644 (file)
@@ -381,6 +381,8 @@ static int fastrpc_map_lookup(struct fastrpc_user *fl, int fd,
        }
        spin_unlock(&fl->lock);
 
+       dma_buf_put(buf);
+
        return ret;
 }