mlx4_core: Fix possible chunk sg list overflow in mlx4_alloc_icm()
authorSebastien Dugue <sebastien.dugue@bull.net>
Thu, 20 May 2010 22:58:22 +0000 (15:58 -0700)
committerRoland Dreier <rolandd@cisco.com>
Thu, 20 May 2010 22:58:22 +0000 (15:58 -0700)
commitc0dc72bad9cf21071f5e4005de46f7c8b67a138a
treee2e7e86f111b9b4f9dbba30f5847187f19ac60d5
parenta0fe3cc5d36a5f5b4f60abfe1a4b1caf4a5cce5a
mlx4_core: Fix possible chunk sg list overflow in mlx4_alloc_icm()

If the number of sg entries in the ICM chunk reaches MLX4_ICM_CHUNK_LEN,
we must set chunk to NULL even for coherent mappings so that the next
time through the loop will allocate another chunk.  Otherwise we'll
overflow the sg list the next time through the loop.  This will lead to
memory corruption if this case is hit.

mthca does not have this bug.

Signed-off-by: Sebastien Dugue <sebastien.dugue@bull.net>
Cc: <stable@kernel.org>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/net/mlx4/icm.c