aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ext4/super.c
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2009-07-27 23:09:47 -0400
committerTheodore Ts'o <tytso@mit.edu>2009-07-27 23:09:47 -0400
commit78f1ddbb498283c2445c11b0dfa666424c301803 (patch)
treeaa25853e60d224812103ea5b5e520fc41d57cb05 /fs/ext4/super.c
parent43b38520296d0c1730c78c878e1d6d1a49122091 (diff)
ext4: Avoid null pointer dereference when decoding EROFS w/o a journal
We need to check to make sure a journal is present before checking the journal flags in ext4_decode_error(). Signed-off-by: Eric Sesterhenn <eric.sesterhenn@lsexperts.de> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/super.c')
-rw-r--r--fs/ext4/super.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c
index 8f4f079e6b9a..fe3f376b7df2 100644
--- a/fs/ext4/super.c
+++ b/fs/ext4/super.c
@@ -344,7 +344,8 @@ static const char *ext4_decode_error(struct super_block *sb, int errno,
344 errstr = "Out of memory"; 344 errstr = "Out of memory";
345 break; 345 break;
346 case -EROFS: 346 case -EROFS:
347 if (!sb || EXT4_SB(sb)->s_journal->j_flags & JBD2_ABORT) 347 if (!sb || (EXT4_SB(sb)->s_journal &&
348 EXT4_SB(sb)->s_journal->j_flags & JBD2_ABORT))
348 errstr = "Journal has aborted"; 349 errstr = "Journal has aborted";
349 else 350 else
350 errstr = "Readonly filesystem"; 351 errstr = "Readonly filesystem";