diff mbox series

[1/3] mtd: rawnand: meson: Fix a limit test in meson_nfc_select_chip()

Message ID 20190201082922.GC8459@kadam (mailing list archive)
State Not Applicable
Headers show
Series [1/3] mtd: rawnand: meson: Fix a limit test in meson_nfc_select_chip() | expand

Commit Message

Dan Carpenter Feb. 1, 2019, 8:29 a.m. UTC
This test is off by one because the > should be >= and it's also testing
against the wrong limit.  The MAX_CE_NUM is the maximum size that
meson_chip->sels[] is allowed to be but meson_chip->nsels is the actual
size.

Fixes: 2d570b34b41a ("mtd: rawnand: meson: add support for Amlogic NAND flash controller ")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 drivers/mtd/nand/raw/meson_nand.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Liang Yang Feb. 2, 2019, 3:01 a.m. UTC | #1
Hi Dan,

On 2019/2/1 16:29, Dan Carpenter wrote:
> This test is off by one because the > should be >= and it's also testing
> against the wrong limit.  The MAX_CE_NUM is the maximum size that
> meson_chip->sels[] is allowed to be but meson_chip->nsels is the actual
> size.
> 
> Fixes: 2d570b34b41a ("mtd: rawnand: meson: add support for Amlogic NAND flash controller ")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
>   drivers/mtd/nand/raw/meson_nand.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/raw/meson_nand.c b/drivers/mtd/nand/raw/meson_nand.c
> index e858d58d97b0..94c90be7e1e0 100644
> --- a/drivers/mtd/nand/raw/meson_nand.c
> +++ b/drivers/mtd/nand/raw/meson_nand.c
> @@ -225,7 +225,7 @@ static void meson_nfc_select_chip(struct nand_chip *nand, int chip)
>   	struct meson_nfc *nfc = nand_get_controller_data(nand);
>   	int ret, value;
>   
> -	if (chip < 0 || WARN_ON_ONCE(chip > MAX_CE_NUM))
> +	if (chip < 0 || WARN_ON_ONCE(chip >= meson_chip->nsels))
>   		return;
>  
Thank you.

Acked-by: Liang Yang <liang.yang@amlogic.com>

>   	nfc->param.chip_select = meson_chip->sels[chip] ? NAND_CE1 : NAND_CE0;
>
Miquel Raynal Feb. 5, 2019, 1:08 p.m. UTC | #2
Hi Dan,

Dan Carpenter <dan.carpenter@oracle.com> wrote on Fri, 1 Feb 2019
11:29:22 +0300:

> This test is off by one because the > should be >= and it's also testing
> against the wrong limit.  The MAX_CE_NUM is the maximum size that
> meson_chip->sels[] is allowed to be but meson_chip->nsels is the actual
> size.
> 
> Fixes: 2d570b34b41a ("mtd: rawnand: meson: add support for Amlogic NAND flash controller ")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
>  drivers/mtd/nand/raw/meson_nand.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/raw/meson_nand.c b/drivers/mtd/nand/raw/meson_nand.c
> index e858d58d97b0..94c90be7e1e0 100644
> --- a/drivers/mtd/nand/raw/meson_nand.c
> +++ b/drivers/mtd/nand/raw/meson_nand.c
> @@ -225,7 +225,7 @@ static void meson_nfc_select_chip(struct nand_chip *nand, int chip)
>  	struct meson_nfc *nfc = nand_get_controller_data(nand);
>  	int ret, value;
>  
> -	if (chip < 0 || WARN_ON_ONCE(chip > MAX_CE_NUM))
> +	if (chip < 0 || WARN_ON_ONCE(chip >= meson_chip->nsels))
>  		return;
>  
>  	nfc->param.chip_select = meson_chip->sels[chip] ? NAND_CE1 : NAND_CE0;

I am gonna fold this three patches if this is fine for you with the
original patch adding the driver which is currently in my next branch.


Thanks,
Miquèl
Dan Carpenter Feb. 5, 2019, 3:38 p.m. UTC | #3
On Tue, Feb 05, 2019 at 02:08:18PM +0100, Miquel Raynal wrote:
> > -	if (chip < 0 || WARN_ON_ONCE(chip > MAX_CE_NUM))
> > +	if (chip < 0 || WARN_ON_ONCE(chip >= meson_chip->nsels))
> >  		return;
> >  
> >  	nfc->param.chip_select = meson_chip->sels[chip] ? NAND_CE1 : NAND_CE0;
> 
> I am gonna fold this three patches if this is fine for you with the
> original patch adding the driver which is currently in my next branch.

No problem.

regards,
dan carpenter
Miquel Raynal Feb. 5, 2019, 7:07 p.m. UTC | #4
Hi Dan,

Dan Carpenter <dan.carpenter@oracle.com> wrote on Fri, 1 Feb 2019
11:29:22 +0300:

> This test is off by one because the > should be >= and it's also testing
> against the wrong limit.  The MAX_CE_NUM is the maximum size that
> meson_chip->sels[] is allowed to be but meson_chip->nsels is the actual
> size.
> 
> Fixes: 2d570b34b41a ("mtd: rawnand: meson: add support for Amlogic NAND flash controller ")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
>  drivers/mtd/nand/raw/meson_nand.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Series merged in nand/next with the original commit.


Thanks,
Miquèl
diff mbox series

Patch

diff --git a/drivers/mtd/nand/raw/meson_nand.c b/drivers/mtd/nand/raw/meson_nand.c
index e858d58d97b0..94c90be7e1e0 100644
--- a/drivers/mtd/nand/raw/meson_nand.c
+++ b/drivers/mtd/nand/raw/meson_nand.c
@@ -225,7 +225,7 @@  static void meson_nfc_select_chip(struct nand_chip *nand, int chip)
 	struct meson_nfc *nfc = nand_get_controller_data(nand);
 	int ret, value;
 
-	if (chip < 0 || WARN_ON_ONCE(chip > MAX_CE_NUM))
+	if (chip < 0 || WARN_ON_ONCE(chip >= meson_chip->nsels))
 		return;
 
 	nfc->param.chip_select = meson_chip->sels[chip] ? NAND_CE1 : NAND_CE0;