Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1501445

[PATCH] dmaengine: ioatdma: loop for number elements in array chanerr_str

Path csiph.com!news.redatomik.org!aioe.org!bofh.it!news.nic.it!robomod
From Colin King <colin.king@canonical.com>
Newsgroups linux.kernel
Subject [PATCH] dmaengine: ioatdma: loop for number elements in array chanerr_str
Date Sun, 16 Oct 2016 14:30:01 +0200
Message-ID <ssSJH-5O2-9@gated-at.bofh.it> (permalink)
X-Original-To Dan Williams <dan.j.williams@intel.com>, Vinod Koul <vinod.koul@intel.com>, Dave Jiang <dave.jiang@intel.com>, Lars-Peter Clausen <lars@metafoo.de>, dmaengine@vger.kernel.org
X-Mailer git-send-email 2.9.3
MIME-Version 1.0
Content-Type text/plain; charset="utf-8"
Content-Transfer-Encoding 8bit
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 44
Organization linux.* mail to news gateway
X-Original-Cc linux-kernel@vger.kernel.org
X-Original-Date Sun, 16 Oct 2016 13:25:47 +0100
X-Original-Message-ID <20161016122547.11478-1-colin.king@canonical.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1501445

Show key headers only | View raw


From: Colin Ian King <colin.king@canonical.com>

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>
---
 drivers/dma/ioat/dma.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/drivers/dma/ioat/dma.c b/drivers/dma/ioat/dma.c
index 49386ce0..42ff307 100644
--- a/drivers/dma/ioat/dma.c
+++ b/drivers/dma/ioat/dma.c
@@ -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]);
 		}
 	}
 }
-- 
2.9.3

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH] dmaengine: ioatdma: loop for number elements in array chanerr_str Colin King <colin.king@canonical.com> - 2016-10-16 14:30 +0200
  Re: [PATCH] dmaengine: ioatdma: loop for number elements in array  chanerr_str Vinod Koul <vinod.koul@intel.com> - 2016-10-19 16:40 +0200

csiph-web