lkml.org 
[lkml]   [2002]   [Jan]   [11]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
DateFri, 11 Jan 2002 12:46:26 -0500
FromChris Mason <>
SubjectRe: [reiserfs-dev] [PATCH] corrupted reiserfs may cause kernel to panic on lookup() sometimes.

On Thursday, January 03, 2002 10:18:30 AM +0300 Oleg Drokin
<green@namesys.com> wrote:

> Hello!
> 
>     Certain disk corruptions and i/o errors may cause lookup() to panic,
> which is wrong.     This patch fixes the problem.
>     Please apply.

Hmmm, none of the callers of reiserfs_find_entry have been changed to check
for IO_ERROR.  We should at least change reiserfs_add_entry to check for
IO_ERROR, so it doesn't try to create a name after getting io error during
the lookup.

-chris

--- 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);
-
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/

\
 
 \ /
  Last update: 2005-03-22 12:15    [W:0.381 / U:0.250 seconds]
©2003-2008 Jasper Spaans