From: mattjreimer@gmail.com
To: linux-mtd@lists.infradead.org
Cc: Matt Reimer <mreimer@vpop.net>
Subject: [PATCH] MTD: treat any negative return value from correct() as an error
Date: Wed, 17 Oct 2007 14:33:23 -0700 [thread overview]
Message-ID: <1192656803-32151-1-git-send-email-mattjreimer@gmail.com> (raw)
From: Matt Reimer <mreimer@vpop.net>
Treat any negative return value from a NAND driver's correct() function
as a failure, rather than just -1. Some drivers (e.g. diskonchip) can
return error values such as -EIO, which ended up being treated as the
number of bits corrected, which in turn resulted in nand_do_read_ops()
returning -EUCLEAN rather than -EBADMSG.
Signed-off-by: Matt Reimer <mreimer@vpop.net>
---
drivers/mtd/nand/nand_base.c | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index 24ac677..6d40edf 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -789,7 +789,7 @@ static int nand_read_page_swecc(struct mtd_info *mtd, struct nand_chip *chip,
int stat;
stat = chip->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]);
- if (stat == -1)
+ if (stat < 0)
mtd->ecc_stats.failed++;
else
mtd->ecc_stats.corrected += stat;
@@ -833,7 +833,7 @@ static int nand_read_page_hwecc(struct mtd_info *mtd, struct nand_chip *chip,
int stat;
stat = chip->ecc.correct(mtd, p, &ecc_code[i], &ecc_calc[i]);
- if (stat == -1)
+ if (stat < 0)
mtd->ecc_stats.failed++;
else
mtd->ecc_stats.corrected += stat;
@@ -874,7 +874,7 @@ static int nand_read_page_syndrome(struct mtd_info *mtd, struct nand_chip *chip,
chip->read_buf(mtd, oob, eccbytes);
stat = chip->ecc.correct(mtd, p, oob, NULL);
- if (stat == -1)
+ if (stat < 0)
mtd->ecc_stats.failed++;
else
mtd->ecc_stats.corrected += stat;
--
1.5.3.2
next reply other threads:[~2007-10-17 22:04 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-17 21:33 mattjreimer [this message]
2007-10-20 10:42 ` [PATCH] MTD: treat any negative return value from correct() as an error Jörn Engel
2007-10-20 11:11 ` [PATCH] BUG() when passing illegal parameters to decode_rs8() or decode_rs16() Jörn Engel
2007-10-20 11:13 ` [PATCH] Replace -1 with -EBADMSG in nand error correction code Jörn Engel
2007-10-21 8:08 ` Thomas Gleixner
2007-10-21 8:42 ` Jörn Engel
2007-10-21 8:04 ` [PATCH] BUG() when passing illegal parameters to decode_rs8() or decode_rs16() Thomas Gleixner
2007-10-21 8:06 ` Thomas Gleixner
2007-10-21 8:48 ` Jörn Engel
2007-10-20 16:37 ` [PATCH] MTD: treat any negative return value from correct() as an error Matt Reimer
2007-10-20 17:40 ` Jörn Engel
2007-10-20 17:59 ` Matthew Reimer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1192656803-32151-1-git-send-email-mattjreimer@gmail.com \
--to=mattjreimer@gmail.com \
--cc=linux-mtd@lists.infradead.org \
--cc=mreimer@vpop.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox