diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ext3/inode.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c index 85fe655fe3e0..9da9125ba3ef 100644 --- a/fs/ext3/inode.c +++ b/fs/ext3/inode.c @@ -223,8 +223,12 @@ void ext3_evict_inode (struct inode *inode) * * Note that directories do not have this problem because they don't * use page cache. + * + * The s_journal check handles the case when ext3_get_journal() fails + * and puts the journal inode. */ if (inode->i_nlink && ext3_should_journal_data(inode) && + EXT3_SB(inode->i_sb)->s_journal && (S_ISLNK(inode->i_mode) || S_ISREG(inode->i_mode))) { tid_t commit_tid = atomic_read(&ei->i_datasync_tid); journal_t *journal = EXT3_SB(inode->i_sb)->s_journal; |