diff mbox

spi: pic32-sqi: silence array overflow warning

Message ID 20160422095524.GB11398@mwanda (mailing list archive)
State Accepted
Commit 989ffc7bd6b0f5ea3423631981f87fde495a8acb
Headers show

Commit Message

Dan Carpenter April 22, 2016, 9:55 a.m. UTC
We read one element beyond the end of the array when we access
"rdesc[i + 1]" so it causes a static checker warning.  It's harmless
because we write over it again on the next line.  But let's just silence
the warning.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

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

Comments

Purna Chandra Mandal April 22, 2016, 9:58 a.m. UTC | #1
On 04/22/2016 03:25 PM, Dan Carpenter wrote:

> We read one element beyond the end of the array when we access
> "rdesc[i + 1]" so it causes a static checker warning.  It's harmless
> because we write over it again on the next line.  But let's just silence
> the warning.
>
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
>
> diff --git a/drivers/spi/spi-pic32-sqi.c b/drivers/spi/spi-pic32-sqi.c
> index b215347..74b9e68 100644
> --- a/drivers/spi/spi-pic32-sqi.c
> +++ b/drivers/spi/spi-pic32-sqi.c
> @@ -537,7 +537,7 @@ static int ring_desc_ring_alloc(struct pic32_sqi *sqi)
>  	}
>  
>  	/* Prepare BD: chain to next BD(s) */
> -	for (i = 0, rdesc = sqi->ring; i < PESQI_BD_COUNT; i++)
> +	for (i = 0, rdesc = sqi->ring; i < PESQI_BD_COUNT - 1; i++)
>  		bd[i].bd_nextp = rdesc[i + 1].bd_dma;
>  	bd[PESQI_BD_COUNT - 1].bd_nextp = 0;
>
Reviewed-by: Purna Chandra Mandal <purna.mandal@microchip.com>


--
To unsubscribe from this list: send the line "unsubscribe linux-spi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/spi/spi-pic32-sqi.c b/drivers/spi/spi-pic32-sqi.c
index b215347..74b9e68 100644
--- a/drivers/spi/spi-pic32-sqi.c
+++ b/drivers/spi/spi-pic32-sqi.c
@@ -537,7 +537,7 @@  static int ring_desc_ring_alloc(struct pic32_sqi *sqi)
 	}
 
 	/* Prepare BD: chain to next BD(s) */
-	for (i = 0, rdesc = sqi->ring; i < PESQI_BD_COUNT; i++)
+	for (i = 0, rdesc = sqi->ring; i < PESQI_BD_COUNT - 1; i++)
 		bd[i].bd_nextp = rdesc[i + 1].bd_dma;
 	bd[PESQI_BD_COUNT - 1].bd_nextp = 0;