From 2770359be26653019957095a3b788ef786a93e76 Mon Sep 17 00:00:00 2001 From: Dan Carpenter Date: Tue, 22 Nov 2011 11:00:20 +0300 Subject: [PATCH] --- yaml --- r: 281447 b: refs/heads/master c: bcdd0c1600903e9222abfcde28947406020ccb5d h: refs/heads/master i: 281445: c36ec0ecee3e96dd5ad25385ed177b6c33712289 281443: 76e23f3fae9310e9351934b48834d8d032b7e31c 281439: c62e999d34166ec21e12c4df9db7275d510dd2e8 v: v3 --- [refs] | 2 +- trunk/fs/ext3/inode.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) 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;