diff -urN B5-real32/fs/ext2/inode.c B5-current/fs/ext2/inode.c --- B5-real32/fs/ext2/inode.c Sun Sep 21 23:43:54 2003 +++ B5-current/fs/ext2/inode.c Mon Sep 22 03:10:40 2003 @@ -1128,7 +1128,7 @@ inode->i_op = &ext2_special_inode_operations; if (raw_inode->i_block[0]) init_special_inode(inode, inode->i_mode, - old_decode_dev(le16_to_cpu(raw_inode->i_block[0]))); + old_decode_dev(le32_to_cpu(raw_inode->i_block[0]))); else init_special_inode(inode, inode->i_mode, new_decode_dev(le32_to_cpu(raw_inode->i_block[1]))); @@ -1222,7 +1222,7 @@ if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode)) { if (old_valid_dev(inode->i_rdev)) { raw_inode->i_block[0] = - cpu_to_le16(old_encode_dev(inode->i_rdev)); + cpu_to_le32(old_encode_dev(inode->i_rdev)); raw_inode->i_block[1] = 0; } else { raw_inode->i_block[0] = 0; diff -urN B5-real32/fs/ext3/inode.c B5-current/fs/ext3/inode.c --- B5-real32/fs/ext3/inode.c Sun Sep 21 23:43:54 2003 +++ B5-current/fs/ext3/inode.c Mon Sep 22 03:10:58 2003 @@ -2567,7 +2567,7 @@ inode->i_op = &ext3_special_inode_operations; if (raw_inode->i_block[0]) init_special_inode(inode, inode->i_mode, - old_decode_dev(le16_to_cpu(raw_inode->i_block[0]))); + old_decode_dev(le32_to_cpu(raw_inode->i_block[0]))); else init_special_inode(inode, inode->i_mode, new_decode_dev(le32_to_cpu(raw_inode->i_block[1]))); @@ -2673,7 +2673,7 @@ if (S_ISCHR(inode->i_mode) || S_ISBLK(inode->i_mode)) { if (old_valid_dev(inode->i_rdev)) { raw_inode->i_block[0] = - cpu_to_le16(old_encode_dev(inode->i_rdev)); + cpu_to_le32(old_encode_dev(inode->i_rdev)); raw_inode->i_block[1] = 0; } else { raw_inode->i_block[0] = 0;