[cursing] I think its almost the same bug we found on friday in the P patch
(not in the kernel yet) where 3.6.x filesystems are missing some
intialization on remounts from ro to rw.

Marcelo, you're bcc'd to let you know progress has been made, and to keep
replies out of your inbox until we've all agreed this is the right fix.

Patch attached, it sets the CONVERT bit and the hash function code when
mounting readonly.

-chris
Index: linus.16/fs/reiserfs/super.c
--- linus.16/fs/reiserfs/super.c Thu, 13 Dec 2001 11:06:51 -0500 root 
(linux/41_super.c 1.2.2.1.2.1 644)
+++ linus.16(w)/fs/reiserfs/super.c Sun, 16 Dec 2001 10:15:14 -0500 root 
+(linux/41_super.c 1.2.2.1.2.1 644)
@@ -1022,7 +1022,13 @@
        if (strncmp (rs->s_magic,  REISER2FS_SUPER_MAGIC_STRING, 
                     strlen ( REISER2FS_SUPER_MAGIC_STRING))) {
            reiserfs_warning("reiserfs: using 3.5.x disk format\n") ;
+       } else {
+           // new format found
+           set_bit (REISERFS_CONVERT, &(s->u.reiserfs_sb.s_mount_opt));
        }
+
+       // mark hash in super block: it could be unset. overwrite should be ok
+        set_sb_hash_function_code( rs, function2code(s->u.reiserfs_sb.s_hash_function 
+) );
     }
 
     reiserfs_proc_info_init( s );

Reply via email to