Message ID | 1335893125-15904-1-git-send-email-mikedunn@newsguy.com |
---|---|
State | New, archived |
Headers | show |
On Tue, 2012-05-01 at 10:25 -0700, Mike Dunn wrote: > 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 <mikedunn@newsguy.com> > Acked-by: Robert Jarzmik <robert.jarzmik@free.fr> Folded this patch into: mtd: driver _read() returns max_bitflips; mtd_read() returns -EUCLEAN and pushed to l2-mtd.git, thanks!
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);