diff --git a/[refs] b/[refs] index 3445a3646f95..5c8b94e1080d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 8c111b3f56332a216b18cd57950bdf04ac8f2a98 +refs/heads/master: bcdd0c1600903e9222abfcde28947406020ccb5d diff --git a/trunk/fs/ext3/inode.c b/trunk/fs/ext3/inode.c index 85fe655fe3e0..9da9125ba3ef 100644 --- a/trunk/fs/ext3/inode.c +++ b/trunk/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;