Re: [PATCH 1/1] mtd: nand: brcmnand: Zero bitflip is not an error

From: Boris Brezillon
Date: Wed Dec 06 2017 - 04:17:04 EST


On Mon, 20 Nov 2017 11:26:26 +0800
Albert Hsieh <wen.hsieh@xxxxxxxxxxxx> wrote:

> A negative return value of brcmstb_nand_verify_erased_page() indicates a
> real bitflip error of an erased page, and other return values (>= 0) show
> the corrected bitflip number. Zero return value means no bitflip, but the
> current driver code treats it as an error, and eventually leads to
> falsely reported ECC error.
>
> Fixes: 02b88eea9f9c ("mtd: brcmnand: Add check for erased page bitflip")
> Signed-off-by: Albert Hsieh <wen.hsieh@xxxxxxxxxxxx>

Acked-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
Cc: <stable@xxxxxxxxxxxxxxx>

Richard, can you queue this patch to the mtd/master branch?

Thanks,

Boris

> ---
> drivers/mtd/nand/brcmnand/brcmnand.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/mtd/nand/brcmnand/brcmnand.c b/drivers/mtd/nand/brcmnand/brcmnand.c
> index e0eb51d..dd56a67 100644
> --- a/drivers/mtd/nand/brcmnand/brcmnand.c
> +++ b/drivers/mtd/nand/brcmnand/brcmnand.c
> @@ -1763,7 +1763,7 @@ static int brcmnand_read(struct mtd_info *mtd, struct nand_chip *chip,
> err = brcmstb_nand_verify_erased_page(mtd, chip, buf,
> addr);
> /* erased page bitflips corrected */
> - if (err > 0)
> + if (err >= 0)
> return err;
> }
>