OSDN Git Service

dmatest: move src_off, dst_off, len inside loop
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 22 Oct 2014 13:16:43 +0000 (16:16 +0300)
committerVinod Koul <vinod.koul@intel.com>
Thu, 5 Feb 2015 02:17:21 +0000 (18:17 -0800)
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>
drivers/dma/dmatest.c

index 87e5d9a..220ee49 100644 (file)
@@ -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) {