diff options
Diffstat (limited to 'fs/reiserfs/super.c')
-rw-r--r-- | fs/reiserfs/super.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c index 660aefca1fd2..4b80ab95d338 100644 --- a/fs/reiserfs/super.c +++ b/fs/reiserfs/super.c | |||
@@ -1053,10 +1053,9 @@ static void handle_barrier_mode(struct super_block *s, unsigned long bits) { | |||
1053 | 1053 | ||
1054 | static void handle_attrs( struct super_block *s ) | 1054 | static void handle_attrs( struct super_block *s ) |
1055 | { | 1055 | { |
1056 | struct reiserfs_super_block * rs; | 1056 | struct reiserfs_super_block * rs = SB_DISK_SUPER_BLOCK (s); |
1057 | 1057 | ||
1058 | if( reiserfs_attrs( s ) ) { | 1058 | if( reiserfs_attrs( s ) ) { |
1059 | rs = SB_DISK_SUPER_BLOCK (s); | ||
1060 | if( old_format_only(s) ) { | 1059 | if( old_format_only(s) ) { |
1061 | reiserfs_warning(s, "reiserfs: cannot support attributes on 3.5.x disk format" ); | 1060 | reiserfs_warning(s, "reiserfs: cannot support attributes on 3.5.x disk format" ); |
1062 | REISERFS_SB(s) -> s_mount_opt &= ~ ( 1 << REISERFS_ATTRS ); | 1061 | REISERFS_SB(s) -> s_mount_opt &= ~ ( 1 << REISERFS_ATTRS ); |
@@ -1066,6 +1065,8 @@ static void handle_attrs( struct super_block *s ) | |||
1066 | reiserfs_warning(s, "reiserfs: cannot support attributes until flag is set in super-block" ); | 1065 | reiserfs_warning(s, "reiserfs: cannot support attributes until flag is set in super-block" ); |
1067 | REISERFS_SB(s) -> s_mount_opt &= ~ ( 1 << REISERFS_ATTRS ); | 1066 | REISERFS_SB(s) -> s_mount_opt &= ~ ( 1 << REISERFS_ATTRS ); |
1068 | } | 1067 | } |
1068 | } else if (le32_to_cpu( rs -> s_flags ) & reiserfs_attrs_cleared) { | ||
1069 | REISERFS_SB(s)->s_mount_opt |= REISERFS_ATTRS; | ||
1069 | } | 1070 | } |
1070 | } | 1071 | } |
1071 | 1072 | ||