Messages in this thread | | | Date | Thu, 02 Apr 2015 19:34:44 +0200 | From | Andrea Scian <> | Subject | Re: [PATCH 4/4] UBI: Implement bitrot checking |
| |
Richard,
Il 29/03/2015 14:13, Richard Weinberger ha scritto: > + mutex_lock(&ubi->buf_mutex); > + err = ubi_io_read(ubi, ubi->peb_buf, e->pnum, 0, ubi->peb_size); > + mutex_unlock(&ubi->buf_mutex); > + if (err == UBI_IO_BITFLIPS) { > + dbg_wl("found bitflips in PEB %d", e->pnum); > + spin_lock(&ubi->wl_lock); > +
IIUC you trigger the action as soon as you have a bitflip error, is this correct?
Isn't this too much conservative? You usually have a RBER on MLC devices that's between 1E-7 (for brand new devices) and 1E-4 (for devices with 1k-2k P/E cycle after 100k-300k read-without-P/E)
Having a few bitflips on a block read is more that usual and current ECC can correct more that 16 bit error over 512/1KiB.
WDYT?
Kind Regards,
--
Andrea SCIAN
DAVE Embedded Systems
| |