on-die ECC support
Peter Horton
phorton at bitbox.co.uk
Sat Mar 23 15:27:37 EDT 2013
On 22/03/2013 21:14, David Mosberger-Tang wrote:
>
> I ended up going with a brutally simple approach: read the page and if
> it gets the REWRITE status bit, read it again with on-die ECC turned
> off, then do a bitdiff of the data read (and the ECC bytes read) to
> count the number of bitflips. While perhaps brutish, this approach
> has the advantage of only relying on documented features. As long as
> the layout described by ecc->layout is accurate, this should work
> reliably. Thus, Micron can screw around with the ECC encoding as they
> wish, as long as the layout doesn't change, we're fine.
>
I prefer this solution to ours, much simpler and probably faster too.
> Note that the patch below doesn't check for bitflips in the OOB areas
> that Micron calls "User metadata I". We don't care about those bits
> since our file system doesn't use OOB at all.
>
> Do you have any recommendation on a good value for bitflip_threshold?
> 1 is obviously too small and 4 feels a bit like playing with fire, no?
>
IIRC we reprted only when there were three or more bit errors in a page.
This would allow two bits with fixed states per page.
P.
More information about the linux-mtd
mailing list