[PATCH] ioatdma: Fix compiler warning

From: Jon Mason
Date: Tue Aug 06 2013 - 17:36:13 EST


GCC v4.6.3 complains:
drivers/dma/ioat/dma_v3.c: In function â__ioat3_prep_pq16_lockâ:
drivers/dma/ioat/dma_v3.c:264:11: warning: array subscript is below array bounds [-Warray-bounds]
drivers/dma/ioat/dma_v3.c:264:11: warning: array subscript is below array bounds [-Warray-bounds]

This is due to the possibility of idx being negative, thus being outside
the boulds of the array. Correct this by making idx an unsigned int.

Signed-off-by: Jon Mason <jon.mason@xxxxxxxxx>
---
drivers/dma/ioat/dma_v3.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/dma/ioat/dma_v3.c b/drivers/dma/ioat/dma_v3.c
index ca6ea9b..a17ef21 100644
--- a/drivers/dma/ioat/dma_v3.c
+++ b/drivers/dma/ioat/dma_v3.c
@@ -251,7 +251,7 @@ static bool is_bwd_noraid(struct pci_dev *pdev)
}

static void pq16_set_src(struct ioat_raw_descriptor *desc[3],
- dma_addr_t addr, u32 offset, u8 coef, int idx)
+ dma_addr_t addr, u32 offset, u8 coef, unsigned int idx)
{
struct ioat_pq_descriptor *pq = (struct ioat_pq_descriptor *)desc[0];
struct ioat_pq16a_descriptor *pq16 =
@@ -1180,7 +1180,7 @@ __ioat3_prep_pq16_lock(struct dma_chan *c, enum sum_check_flags *result,
struct ioat_pq_descriptor *pq;
u32 offset = 0;
u8 op;
- int i, s, idx, num_descs;
+ unsigned int i, s, idx, num_descs;

/* this function only handles src_cnt 9 - 16 */
BUG_ON(src_cnt < 9);
--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/