msm: adsprpc: Clean DMA handles maps in case of error
Free DMA handle fd maps in case of error while creating map for other handles. Change-Id: Iae062bc958a58f38e4424fab88b451813478ae97 Acked-by: Deepika Singh <dsi@qti.qualcomm.com> Signed-off-by: Vamsi krishna Gattupalli <vgattupa@codeaurora.org>
This commit is contained in:
@@ -1696,7 +1696,7 @@ static int get_args(uint32_t kernel, struct smq_invoke_ctx *ctx)
|
||||
uintptr_t args;
|
||||
size_t rlen = 0, copylen = 0, metalen = 0, lrpralen = 0;
|
||||
int i, oix;
|
||||
int err = 0;
|
||||
int err = 0, j = 0;
|
||||
int mflags = 0;
|
||||
uint64_t *fdlist;
|
||||
uint32_t *crclist;
|
||||
@@ -1741,6 +1741,8 @@ static int get_args(uint32_t kernel, struct smq_invoke_ctx *ctx)
|
||||
FASTRPC_ATTR_NOVA, 0, 0, dmaflags,
|
||||
&ctx->maps[i]);
|
||||
if (err) {
|
||||
for (j = bufs; j < i; j++)
|
||||
fastrpc_mmap_free(ctx->maps[j], 0);
|
||||
mutex_unlock(&ctx->fl->map_mutex);
|
||||
goto bail;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user