Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8148965c authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "dsp: add change to fix use-after-free issue"

parents 9bb5ce8e 1546c9a1
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -93,7 +93,7 @@ static int msm_audio_dma_buf_map(struct dma_buf *dma_buf,
				 bool cma_mem)
{

	struct msm_audio_alloc_data *alloc_data;
	struct msm_audio_alloc_data *alloc_data = NULL;
	struct device *cb_dev;
	unsigned long ionflag = 0;
	int rc = 0;
@@ -162,6 +162,7 @@ static int msm_audio_dma_buf_map(struct dma_buf *dma_buf,
		       alloc_data->attach);
free_alloc_data:
	kfree(alloc_data);
	alloc_data = NULL;

	return rc;
}
@@ -204,6 +205,7 @@ static int msm_audio_dma_buf_unmap(struct dma_buf *dma_buf, bool cma_mem)

			list_del(&(alloc_data->list));
			kfree(alloc_data);
			alloc_data = NULL;
			break;
		}
	}
@@ -507,6 +509,11 @@ static int msm_audio_ion_map_buf(struct dma_buf *dma_buf, dma_addr_t *paddr,
{
	int rc = 0;

	if (!dma_buf || !paddr || !vaddr || !plen) {
		pr_err("%s: Invalid params\n", __func__);
		return -EINVAL;
	}

	rc = msm_audio_ion_get_phys(dma_buf, paddr, plen);
	if (rc) {
		pr_err("%s: ION Get Physical for AUDIO failed, rc = %d\n",