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


Groups > linux.kernel > #1201160 > unrolled thread

[PATCH v3 1/2] ioatdma: fix overflow of u16 in ring_reshape

Started byAllen Hubbe <Allen.Hubbe@emc.com>
First post2015-08-05 23:50 +0200
Last post2015-08-05 23:50 +0200
Articles 1 — 1 participant

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH v3 1/2] ioatdma: fix overflow of u16 in ring_reshape Allen Hubbe <Allen.Hubbe@emc.com> - 2015-08-05 23:50 +0200

#1201160 — [PATCH v3 1/2] ioatdma: fix overflow of u16 in ring_reshape

FromAllen Hubbe <Allen.Hubbe@emc.com>
Date2015-08-05 23:50 +0200
Subject[PATCH v3 1/2] ioatdma: fix overflow of u16 in ring_reshape
Message-ID<pUeJs-5l3-17@gated-at.bofh.it>
If the allocation order is 16, then the u16 index will overflow and wrap
to zero instead of being equal or greater than 1 << 16.  The loop
condition will always be true, and the loop will run until all the
memory resources are depleted.

Change the type of index 'i' to u32, so that it is large enough to store
a value equal or greater than 1 << 16.

Signed-off-by: Allen Hubbe <Allen.Hubbe@emc.com>
---
 drivers/dma/ioat/dma.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/dma/ioat/dma.c b/drivers/dma/ioat/dma.c
index a5630966834e..7435585dbbd6 100644
--- a/drivers/dma/ioat/dma.c
+++ b/drivers/dma/ioat/dma.c
@@ -372,7 +372,7 @@ static bool reshape_ring(struct ioatdma_chan *ioat_chan, int order)
 	const u16 active = ioat_ring_active(ioat_chan);
 	const u32 new_size = 1 << order;
 	struct ioat_ring_ent **ring;
-	u16 i;
+	u32 i;
 
 	if (order > ioat_get_max_alloc_order())
 		return false;
-- 
2.5.0.rc1

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

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web