diff options
-rw-r--r-- | fs/ocfs2/journal.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/ocfs2/journal.c b/fs/ocfs2/journal.c index b71b3385fdbd..fa0bcac5ceae 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c | |||
@@ -560,7 +560,11 @@ int ocfs2_journal_init(struct ocfs2_journal *journal, int *dirty) | |||
560 | SET_INODE_JOURNAL(inode); | 560 | SET_INODE_JOURNAL(inode); |
561 | OCFS2_I(inode)->ip_open_count++; | 561 | OCFS2_I(inode)->ip_open_count++; |
562 | 562 | ||
563 | status = ocfs2_meta_lock(inode, NULL, &bh, 1); | 563 | /* Skip recovery waits here - journal inode metadata never |
564 | * changes in a live cluster so it can be considered an | ||
565 | * exception to the rule. */ | ||
566 | status = ocfs2_meta_lock_full(inode, NULL, &bh, 1, | ||
567 | OCFS2_META_LOCK_RECOVERY); | ||
564 | if (status < 0) { | 568 | if (status < 0) { |
565 | if (status != -ERESTARTSYS) | 569 | if (status != -ERESTARTSYS) |
566 | mlog(ML_ERROR, "Could not get lock on journal!\n"); | 570 | mlog(ML_ERROR, "Could not get lock on journal!\n"); |