diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2014-10-22 16:16:43 +0300 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2015-02-04 18:17:21 -0800 |
commit | ede23a586886bbd0d5246b2fa89cf78b81265aa3 (patch) | |
tree | 952821c2db79b8565d9952dc138acc632b1b3a1e /drivers/dma/dmatest.c | |
parent | a835bb8550f73c5e9aaf71ae829da86d34dcbe2b (diff) | |
download | op-kernel-dev-ede23a586886bbd0d5246b2fa89cf78b81265aa3.zip op-kernel-dev-ede23a586886bbd0d5246b2fa89cf78b81265aa3.tar.gz |
dmatest: move src_off, dst_off, len inside loop
The scope of those varsiables is in while-loop. This patch moves them there and
removes duplicate code.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/dmatest.c')
-rw-r--r-- | drivers/dma/dmatest.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/dma/dmatest.c b/drivers/dma/dmatest.c index 87e5d9a..220ee49 100644 --- a/drivers/dma/dmatest.c +++ b/drivers/dma/dmatest.c @@ -405,7 +405,6 @@ static int dmatest_func(void *data) struct dmatest_params *params; struct dma_chan *chan; struct dma_device *dev; - unsigned int src_off, dst_off, len; unsigned int error_count; unsigned int failed_tests = 0; unsigned int total_tests = 0; @@ -484,6 +483,7 @@ static int dmatest_func(void *data) struct dmaengine_unmap_data *um; dma_addr_t srcs[src_cnt]; dma_addr_t *dsts; + unsigned int src_off, dst_off, len; u8 align = 0; total_tests++; @@ -502,15 +502,21 @@ static int dmatest_func(void *data) break; } - if (params->noverify) { + if (params->noverify) len = params->buf_size; + else + len = dmatest_random() % params->buf_size + 1; + + len = (len >> align) << align; + if (!len) + len = 1 << align; + + total_len += len; + + if (params->noverify) { src_off = 0; dst_off = 0; } else { - len = dmatest_random() % params->buf_size + 1; - len = (len >> align) << align; - if (!len) - len = 1 << align; src_off = dmatest_random() % (params->buf_size - len + 1); dst_off = dmatest_random() % (params->buf_size - len + 1); @@ -523,11 +529,6 @@ static int dmatest_func(void *data) params->buf_size); } - len = (len >> align) << align; - if (!len) - len = 1 << align; - total_len += len; - um = dmaengine_get_unmap_data(dev->dev, src_cnt+dst_cnt, GFP_KERNEL); if (!um) { |