|
@@ -2372,6 +2372,15 @@ int ocfs2_orphan_del(struct ocfs2_super *osb,
|
|
|
(unsigned long long)OCFS2_I(orphan_dir_inode)->ip_blkno,
|
|
|
name, strlen(name));
|
|
|
|
|
|
+ status = ocfs2_journal_access_di(handle,
|
|
|
+ INODE_CACHE(orphan_dir_inode),
|
|
|
+ orphan_dir_bh,
|
|
|
+ OCFS2_JOURNAL_ACCESS_WRITE);
|
|
|
+ if (status < 0) {
|
|
|
+ mlog_errno(status);
|
|
|
+ goto leave;
|
|
|
+ }
|
|
|
+
|
|
|
/* find it's spot in the orphan directory */
|
|
|
status = ocfs2_find_entry(name, strlen(name), orphan_dir_inode,
|
|
|
&lookup);
|
|
@@ -2387,15 +2396,6 @@ int ocfs2_orphan_del(struct ocfs2_super *osb,
|
|
|
goto leave;
|
|
|
}
|
|
|
|
|
|
- status = ocfs2_journal_access_di(handle,
|
|
|
- INODE_CACHE(orphan_dir_inode),
|
|
|
- orphan_dir_bh,
|
|
|
- OCFS2_JOURNAL_ACCESS_WRITE);
|
|
|
- if (status < 0) {
|
|
|
- mlog_errno(status);
|
|
|
- goto leave;
|
|
|
- }
|
|
|
-
|
|
|
/* do the i_nlink dance! :) */
|
|
|
orphan_fe = (struct ocfs2_dinode *) orphan_dir_bh->b_data;
|
|
|
if (S_ISDIR(inode->i_mode))
|