flags field records the superblock state, so check if it is equal to
BEFS_DIRTY.

Signed-off-by: Salah Triki <salah.tr...@gmail.com>
---
 fs/befs/super.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/befs/super.c b/fs/befs/super.c
index 5ab75e8..79be409 100644
--- a/fs/befs/super.c
+++ b/fs/befs/super.c
@@ -103,7 +103,7 @@ befs_check_sb(struct super_block *sb)
                return BEFS_ERR;
        }
 
-       if (befs_sb->log_start != befs_sb->log_end) {
+       if (befs_sb->log_start != befs_sb->log_end || befs_sb->flags == 
BEFS_DIRTY) {
                befs_error(sb, "Filesystem not clean! There are blocks in the "
                           "journal. You must boot into BeOS and mount this 
volume "
                           "to make it clean.");
-- 
1.9.1

Reply via email to