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

Commit 945b5af3 authored by Andy Shevchenko's avatar Andy Shevchenko Committed by Vinod Koul
Browse files

dmatest: allocate memory for pq_coefs from heap



This will help in future to hide a global variable usage.

Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: default avatarViresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: default avatarVinod Koul <vinod.koul@intel.com>
parent 77101ce5
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -278,7 +278,7 @@ static int dmatest_func(void *data)
	dma_cookie_t		cookie;
	enum dma_status		status;
	enum dma_ctrl_flags 	flags;
	u8			pq_coefs[pq_sources + 1];
	u8			*pq_coefs = NULL;
	int			ret;
	int			src_cnt;
	int			dst_cnt;
@@ -302,10 +302,15 @@ static int dmatest_func(void *data)
		/* force odd to ensure dst = src */
		src_cnt = min_odd(pq_sources | 1, dma_maxpq(dev, 0));
		dst_cnt = 2;

		pq_coefs = kmalloc(pq_sources+1, GFP_KERNEL);
		if (!pq_coefs)
			goto err_thread_type;

		for (i = 0; i < src_cnt; i++)
			pq_coefs[i] = 1;
	} else
		goto err_srcs;
		goto err_thread_type;

	thread->srcs = kcalloc(src_cnt+1, sizeof(u8 *), GFP_KERNEL);
	if (!thread->srcs)
@@ -533,6 +538,8 @@ static int dmatest_func(void *data)
err_srcbuf:
	kfree(thread->srcs);
err_srcs:
	kfree(pq_coefs);
err_thread_type:
	pr_notice("%s: terminating after %u tests, %u failures (status %d)\n",
			thread_name, total_tests, failed_tests, ret);