Ted or Pekon, are you interested in backporting this appropriately? Or should I take it? Brian On Mon, Jul 07, 2014 at 10:46:36AM -0700, Greg Kroah-Hartman wrote: > > The patch below does not apply to the 3.15-stable tree. > If someone wants it applied there, or to any other stable or longterm > tree, then please email the backport, including the original git commit > id to <stable@xxxxxxxxxxxxxxx>. > > thanks, > > greg k-h > > ------------------ original commit in Linus's tree ------------------ > > From 2913aae5f9eae2f857cdeff5388bb22d0751aa08 Mon Sep 17 00:00:00 2001 > From: Ted Juan <ted.juan@xxxxxxxxx> > Date: Wed, 28 May 2014 22:33:06 +0800 > Subject: [PATCH] mtd: nand: omap: fix omap_calculate_ecc_bch() for-loop error > > Fixes: 2c9f2365d1e1d0e318b068f683f18c99515b80f8 > mtd: nand: omap: ecc.calculate: merge omap3_calculate_ecc_bch4 in omap_calculate_ecc_bch > > Fixes: 7bcd1dca1d587ad29f9825ba4414620440e8c8da > mtd: nand: omap: ecc.calculate: merge omap3_calculate_ecc_bch8 in omap_calculate_ecc_bch > > Cc: <stable@xxxxxxxxxxxxxxx> # 3.13.x+ > Signed-off-by: Ted Juan <ted.juan@xxxxxxxxx> > Acked-by: Pekon Gupta <pekon@xxxxxx> > Signed-off-by: Brian Norris <computersforpeace@xxxxxxxxx> > > diff --git a/drivers/mtd/nand/omap2.c b/drivers/mtd/nand/omap2.c > index cbe87a8e6218..f0ed92e210a1 100644 > --- a/drivers/mtd/nand/omap2.c > +++ b/drivers/mtd/nand/omap2.c > @@ -1180,7 +1180,7 @@ static int __maybe_unused omap_calculate_ecc_bch(struct mtd_info *mtd, > u8 *ecc_code; > unsigned long nsectors, bch_val1, bch_val2, bch_val3, bch_val4; > u32 val; > - int i; > + int i, j; > > nsectors = ((readl(info->reg.gpmc_ecc_config) >> 4) & 0x7) + 1; > for (i = 0; i < nsectors; i++) { > @@ -1263,8 +1263,8 @@ static int __maybe_unused omap_calculate_ecc_bch(struct mtd_info *mtd, > case OMAP_ECC_BCH4_CODE_HW_DETECTION_SW: > /* Add constant polynomial to remainder, so that > * ECC of blank pages results in 0x0 on reading back */ > - for (i = 0; i < eccbytes; i++) > - ecc_calc[i] ^= bch4_polynomial[i]; > + for (j = 0; j < eccbytes; j++) > + ecc_calc[j] ^= bch4_polynomial[j]; > break; > case OMAP_ECC_BCH4_CODE_HW: > /* Set 8th ECC byte as 0x0 for ROM compatibility */ > @@ -1273,8 +1273,8 @@ static int __maybe_unused omap_calculate_ecc_bch(struct mtd_info *mtd, > case OMAP_ECC_BCH8_CODE_HW_DETECTION_SW: > /* Add constant polynomial to remainder, so that > * ECC of blank pages results in 0x0 on reading back */ > - for (i = 0; i < eccbytes; i++) > - ecc_calc[i] ^= bch8_polynomial[i]; > + for (j = 0; j < eccbytes; j++) > + ecc_calc[j] ^= bch8_polynomial[j]; > break; > case OMAP_ECC_BCH8_CODE_HW: > /* Set 14th ECC byte as 0x0 for ROM compatibility */ > -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html