[PATCH 1/2] jffs2: fix wrong offset in an error msg from __jff2_dbg_prewrite_paranoia_check
Cyrille Pitchen
cyrille.pitchen at atmel.com
Tue Oct 21 01:04:59 PDT 2014
When a none 0xff character is found in the flash buffer, an error message is
printed. This error message claims to provide the offset of the FIRST corrupted
byte but due to a missing break in the for loop, the former code always prints
the offset of the byte immediately after the end of the tested buffer.
Signed-off-by: Cyrille Pitchen <cyrille.pitchen at atmel.com>
---
fs/jffs2/debug.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/fs/jffs2/debug.c b/fs/jffs2/debug.c
index 1090eb6..07bd5bc 100644
--- a/fs/jffs2/debug.c
+++ b/fs/jffs2/debug.c
@@ -141,12 +141,11 @@ __jffs2_dbg_prewrite_paranoia_check(struct jffs2_sb_info *c,
return;
}
- ret = 0;
for (i = 0; i < len; i++)
if (buf[i] != 0xff)
- ret = 1;
+ break;
- if (ret) {
+ if (i != len) {
JFFS2_ERROR("argh, about to write node to %#08x on flash, but there are data already there. The first corrupted byte is at %#08x offset.\n",
ofs, ofs + i);
__jffs2_dbg_dump_buffer(buf, len, ofs);
--
1.8.2.2
More information about the linux-mtd
mailing list