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

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

Merge "asoc: Fix a memory leak issue when nvmem read returns invalid length"

parents 2aa9fada e88db609
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -6844,10 +6844,16 @@ static int msm_asoc_machine_probe(struct platform_device *pdev)
	}
	buf = nvmem_cell_read(cell, &len);
	nvmem_cell_put(cell);
	if (IS_ERR_OR_NULL(buf) || len <= 0 || len > sizeof(32)) {
	if (IS_ERR_OR_NULL(buf)) {
		dev_dbg(&pdev->dev, "%s: FAILED to read nvmem cell \n", __func__);
		goto ret;
	}
	if (len <= 0 || len > sizeof(u32)) {
		dev_dbg(&pdev->dev, "%s: nvmem cell length out of range: %d\n",
			__func__, len);
		kfree(buf);
		goto ret;
	}
	memcpy(&adsp_var_idx, buf, len);
	kfree(buf);
	pdata->va_disable = adsp_var_idx;