]> git.baikalelectronics.ru Git - kernel.git/commit
mtd: nand: do not ignore all ECC errors
authorBrian Norris <computersforpeace@gmail.com>
Wed, 7 Sep 2011 20:13:29 +0000 (13:13 -0700)
committerArtem Bityutskiy <artem.bityutskiy@intel.com>
Sun, 11 Sep 2011 13:48:49 +0000 (16:48 +0300)
commitf329501b22ff4ba5ce50bed368c197a4ddae26f5
treed8509ed2d17d4cdd8b569e2c4e12efbab8e8b7e3
parenteefff7ebe7f31484ddb39890c09fb2fd8ac11682
mtd: nand: do not ignore all ECC errors

There are a few reasons not to ignore ECC errors here.

First, mtd->read_oob is being called in raw mode, so there should be no
error correction in the first place.

Second, if we change this such that there *is* error correction in this
function, then we will want to pass the error message upward.

In fact, the code I introduced to "ignore ECC errors" would have been
better if it had just placed this test down in `scan_block_full()' in
the first place. We would like to ignore ECC errors when we are simply
checking for bad block markers (e.g., factory marked), but we may not
want to ignore ECC errors when scanning OOB for a flash-based BBT
pattern (in `scan_read_raw()'; note that the return codes from
`scan_read_raw()' are not actually handled yet).

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@intel.com>
drivers/mtd/nand/nand_bbt.c