lkml.org 
[lkml]   [2018]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 38/67] mtdchar: fix usage of mtd_ooblayout_ecc()
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: OuYang ZhiZhong <ouyzz@yealink.com>

    commit 6de564939e14327148e31ddcf769e34105176447 upstream.

    Section was not properly computed. The value of OOB region definition is
    always ECC section 0 information in the OOB area, but we want to get all
    the ECC bytes information, so we should call
    mtd_ooblayout_ecc(mtd, section++, &oobregion) until it returns -ERANGE.

    Fixes: c2b78452a9db ("mtd: use mtd_ooblayout_xxx() helpers where appropriate")
    Cc: <stable@vger.kernel.org>
    Signed-off-by: OuYang ZhiZhong <ouyzz@yealink.com>
    Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/mtd/mtdchar.c | 4 ++--
    1 file changed, 2 insertions(+), 2 deletions(-)

    --- a/drivers/mtd/mtdchar.c
    +++ b/drivers/mtd/mtdchar.c
    @@ -487,7 +487,7 @@ static int shrink_ecclayout(struct mtd_i
    for (i = 0; i < MTD_MAX_ECCPOS_ENTRIES;) {
    u32 eccpos;

    - ret = mtd_ooblayout_ecc(mtd, section, &oobregion);
    + ret = mtd_ooblayout_ecc(mtd, section++, &oobregion);
    if (ret < 0) {
    if (ret != -ERANGE)
    return ret;
    @@ -534,7 +534,7 @@ static int get_oobinfo(struct mtd_info *
    for (i = 0; i < ARRAY_SIZE(to->eccpos);) {
    u32 eccpos;

    - ret = mtd_ooblayout_ecc(mtd, section, &oobregion);
    + ret = mtd_ooblayout_ecc(mtd, section++, &oobregion);
    if (ret < 0) {
    if (ret != -ERANGE)
    return ret;

    \
     
     \ /
      Last update: 2018-03-27 19:54    [W:4.226 / U:0.184 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site