Hello!
Certain disk corruptions and i/o errors may cause lookup() to panic, which is wrong.
This patch fixes the problem.
Please apply.
Bye,
Oleg
--ZPt4rx8FFjLCG7dd
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="corrupted_fs_panic_on_lookup_fix.diff"
--- linux/fs/reiserfs/namei.c.orig Tue Dec 25 16:27:27 2001
+++ linux/fs/reiserfs/namei.c Tue Dec 25 16:29:13 2001
@@ -309,9 +309,10 @@
while (1) {
retval = search_by_entry_key (dir->i_sb, &key_to_search, path_to_entry, de);
- if (retval == IO_ERROR)
- // FIXME: still has to be dealt with
- reiserfs_panic (dir->i_sb, "zam-7001: io error in " __FUNCTION__ "\n");
+ if (retval == IO_ERROR) {
+ reiserfs_warning ("zam-7001: io error in " __FUNCTION__ "\n");
+ return IO_ERROR;
+ }
/* compare names for all entries having given hash value */
retval = linear_search_in_dir_item (&key_to_search, de, name, namelen);
--ZPt4rx8FFjLCG7dd--
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/