jffs2: Fix return value from jffs2_do_readpage_nolock()
Linux-MTD Mailing List
linux-mtd at lists.infradead.org
Tue Aug 4 07:59:01 EDT 2009
Gitweb: http://git.infradead.org/?p=mtd-2.6.git;a=commit;h=57ca7deb062abf56168d15f000c16e25f88a9cf3
Commit: 57ca7deb062abf56168d15f000c16e25f88a9cf3
Parent: d676c11727815761e41a81b00c054b4bec452ae5
Author: Anders Grafström <grfstrm at users.sourceforge.net>
AuthorDate: Tue Aug 4 13:11:47 2009 +0200
Committer: David Woodhouse <David.Woodhouse at intel.com>
CommitDate: Tue Aug 4 12:13:06 2009 +0100
jffs2: Fix return value from jffs2_do_readpage_nolock()
This fixes "kernel BUG at fs/jffs2/file.c:251!".
This pseudocode hopefully illustrates the scenario that triggers it:
jffs2_write_begin {
jffs2_do_readpage_nolock {
jffs2_read_inode_range {
jffs2_read_dnode {
Data CRC 33c102e9 != calculated CRC 0ef77e7b for node at 005d42e4
return -EIO;
}
}
ClearPageUptodate(pg);
return 0;
}
}
jffs2_write_end {
BUG_ON(!PageUptodate(pg));
}
Signed-off-by: Anders Grafström <grfstrm at users.sourceforge.net>
Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
---
fs/jffs2/file.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/fs/jffs2/file.c b/fs/jffs2/file.c
index 5edc2bf..23c9475 100644
--- a/fs/jffs2/file.c
+++ b/fs/jffs2/file.c
@@ -99,7 +99,7 @@ static int jffs2_do_readpage_nolock (struct inode *inode, struct page *pg)
kunmap(pg);
D2(printk(KERN_DEBUG "readpage finished\n"));
- return 0;
+ return ret;
}
int jffs2_do_readpage_unlock(struct inode *inode, struct page *pg)
More information about the linux-mtd-cvs
mailing list