]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
dmaengine: ioatdma: loop for number elements in array chanerr_str
authorColin Ian King <colin.king@canonical.com>
Sun, 16 Oct 2016 12:25:47 +0000 (13:25 +0100)
committerVinod Koul <vinod.koul@intel.com>
Wed, 19 Oct 2016 14:47:01 +0000 (20:17 +0530)
Just iterate over the number of elements in array chanerr_str rather
than for all 32 bits.  This removes the need for a NULL chanerr_str[i]
check which could possibly overrun if the upper bits (28..31) of
chanerr are set and 27th bit in chanerr is zero. This simplifies the
code by removing an if statement and a break.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/ioat/dma.c

index 49386ce04bf52ebd7f66855f631f8efcb2a8fa1d..42ff3073d89d12a1d24f755ee3325d6b6531f3bf 100644 (file)
@@ -66,7 +66,6 @@ static char *chanerr_str[] = {
        "Result Guard Tag verification Error",
        "Result Application Tag verification Error",
        "Result Reference Tag verification Error",
-       NULL
 };
 
 static void ioat_eh(struct ioatdma_chan *ioat_chan);
@@ -75,13 +74,10 @@ static void ioat_print_chanerrs(struct ioatdma_chan *ioat_chan, u32 chanerr)
 {
        int i;
 
-       for (i = 0; i < 32; i++) {
+       for (i = 0; i < ARRAY_SIZE(chanerr_str); i++) {
                if ((chanerr >> i) & 1) {
-                       if (chanerr_str[i]) {
-                               dev_err(to_dev(ioat_chan), "Err(%d): %s\n",
-                                       i, chanerr_str[i]);
-                       } else
-                               break;
+                       dev_err(to_dev(ioat_chan), "Err(%d): %s\n",
+                               i, chanerr_str[i]);
                }
        }
 }