[PATCH v2] mtd: nand: omap: fix BCHx ecc.correct to return detected bit-flips in erased-page
ezequiel.garcia at free-electrons.com
Mon May 19 05:20:52 PDT 2014
On 19 May 05:00 AM, Gupta, Pekon wrote:
> >From: Brian Norris [mailto:computersforpeace at gmail.com]
> >On Tue, Mar 25, 2014 at 12:28:19PM +0530, Pekon Gupta wrote:
> >> fixes: commit 62116e5171e00f85a8d53f76e45b84423c89ff34
> >> mtd: nand: omap2: Support for hardware BCH error correction.
> >> In omap_elm_correct_data(), if bitflip_count in an erased-page is within the
> >> correctable limit (< ecc.strength), then it is not indicated back to the caller
> >> ecc->read_page().
> >> This mis-guides upper layers like MTD and UBIFS layer to assume erased-page as
> >> perfectly clean and use it for writing even if actual bitflip_count was
> >> dangerously high (bitflip_count > mtd->bitflip_threshold).
> >> This patch fixes this above issue, by returning 'stats' to caller
> >> ecc->read_page() under all scenarios.
> >> Reported-by: Brian Norris <computersforpeace at gmail.com>
> >> Signed-off-by: Pekon Gupta <pekon at ti.com>
> >Pushed to l2-mtd.git. Thanks!
> Just forgot to ask, Is this patch candidate for stable?
> This one fixes the long standing issue of returning bit-flip count of an
> erased-page to upper layers. So that upper layers take correct decision.
Yes, if the commit fixes a bug then it can be marked for stable.
There's some instructions on this subject, please take a look at  and .
I think this patch qualifies the stable rules.
In particular, if a patch fixes a bug and you know the culprit commit you
can add a Fixes tag to pass such information, with a 12-digit commit ID and
the commit title enclosed in double-quotes :
Fixes: 62116e5171e0 ("mtd: nand: omap2: Support for hardware BCH error correction")
To mark it for stable , you need add a Cc tag like this:
Cc: <stable at vger.kernel.org> # 3.x.y
You can use something like this to find the releases that contain the bug:
git tag -l --contains 62116e5171e0 | grep ^v3
It's handy to add that as a git alias:
ontags = !sh -c 'git tag -l --contains $1 | grep ^v' -
However, now that Brian has pushed the patch, you don't need to do any of
this. AFAIK, maintainers usually take care of all the above.
Hope this helps,
Ezequiel García, Free Electrons
Embedded Linux, Kernel and Android Engineering
More information about the linux-mtd