lkml.org 
[lkml]   [2001]   [Dec]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
Subject[PATCH] reiserfs oneliner
From

This patch removes an assignment in super.c in reiserfs that caused deadlock
when mounting my reiser-filesystems.

the original code looks like this:

size = block_size(s->s_dev);
sb_set_blocksize(s, size);

/* read block (64-th 1k block), which can contain reiserfs super block */
if (read_super_block (s, REISERFS_DISK_OFFSET_IN_BYTES)) {
// try old format (undistributed bitmap, super block in 8-th 1k block of a device)
sb_set_blocksize(s, size);
if (read_super_block (s, REISERFS_OLD_DISK_OFFSET_IN_BYTES))
goto error;
else
old_format = 1;
}
s->s_blocksize = size;

If read_super_block() changes the blocksize in the superblock it shouldn't
be restored again, should it?

With the following patch i can mount my reiserfs:es without deadlock.

--- linux-2.5.2-pre3/fs/reiserfs/super.c Fri Dec 28 09:03:32 2001
+++ linux-2.5.2-pre3-lvmfix-reiserfix/fs/reiserfs/super.c Fri Dec 28 18:19:49 2001
@@ -637,7 +637,6 @@
else
old_format = 1;
}
- s->s_blocksize = size;

s->u.reiserfs_sb.s_mount_state = SB_REISERFS_STATE(s);
s->u.reiserfs_sb.s_mount_state = REISERFS_VALID_FS ;
-
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 13:14    [W:0.061 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site