From patchwork Tue May 1 17:25:25 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: mtd: docg3: fix max_bitflips related bug Date: Tue, 01 May 2012 07:25:25 -0000 From: Mike Dunn X-Patchwork-Id: 156152 Message-Id: <1335893125-15904-1-git-send-email-mikedunn@newsguy.com> To: linux-mtd@lists.infradead.org Cc: Mike Dunn This fixes a bug in the docg3 driver that was introduced by the EUCLEAN patch set [1]. [1] http://lists.infradead.org/pipermail/linux-mtd/2012-April/040941.html Signed-off-by: Mike Dunn Acked-by: Robert Jarzmik --- drivers/mtd/devices/docg3.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/mtd/devices/docg3.c b/drivers/mtd/devices/docg3.c index 7644d59..3dbbfa5 100644 --- a/drivers/mtd/devices/docg3.c +++ b/drivers/mtd/devices/docg3.c @@ -889,7 +889,7 @@ static int doc_read_oob(struct mtd_info *mtd, loff_t from, ret = 0; skip = from % DOC_LAYOUT_PAGE_SIZE; mutex_lock(&docg3->cascade->lock); - while (!ret && (len > 0 || ooblen > 0)) { + while (ret >= 0 && (len > 0 || ooblen > 0)) { calc_block_sector(from - skip, &block0, &block1, &page, &ofs, docg3->reliable); nbdata = min_t(size_t, len, DOC_LAYOUT_PAGE_SIZE - skip);