flags field is usefull for validating the superblock state, so add this
field to befs_sb_info and read the state from the disk.

Signed-off-by: Salah Triki <salah.tr...@gmail.com>
---
 fs/befs/befs.h  | 3 +++
 fs/befs/super.c | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/fs/befs/befs.h b/fs/befs/befs.h
index e0f59263a..511d16d 100644
--- a/fs/befs/befs.h
+++ b/fs/befs/befs.h
@@ -43,6 +43,9 @@ struct befs_sb_info {
        u32 ag_shift;
        u32 num_ags;
 
+       /* State of the superblock */
+       u32 flags;
+
        /* jornal log entry */
        befs_block_run log_blocks;
        befs_off_t log_start;
diff --git a/fs/befs/super.c b/fs/befs/super.c
index aeafc4d..5ab75e8 100644
--- a/fs/befs/super.c
+++ b/fs/befs/super.c
@@ -45,6 +45,8 @@ befs_load_sb(struct super_block *sb, befs_super_block * 
disk_sb)
        befs_sb->ag_shift = fs32_to_cpu(sb, disk_sb->ag_shift);
        befs_sb->num_ags = fs32_to_cpu(sb, disk_sb->num_ags);
 
+       befs_sb->flags = fs32_to_cpu(sb, disk_sb->flags);
+
        befs_sb->log_blocks = fsrun_to_cpu(sb, disk_sb->log_blocks);
        befs_sb->log_start = fs64_to_cpu(sb, disk_sb->log_start);
        befs_sb->log_end = fs64_to_cpu(sb, disk_sb->log_end);
-- 
1.9.1

Reply via email to