diff options
Diffstat (limited to 'fs/ocfs2/inode.c')
-rw-r--r-- | fs/ocfs2/inode.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c index 4738dd25bb94..9d92c859ac94 100644 --- a/fs/ocfs2/inode.c +++ b/fs/ocfs2/inode.c | |||
@@ -534,6 +534,9 @@ static int ocfs2_truncate_for_delete(struct ocfs2_super *osb, | |||
534 | * data and fast symlinks. | 534 | * data and fast symlinks. |
535 | */ | 535 | */ |
536 | if (fe->i_clusters) { | 536 | if (fe->i_clusters) { |
537 | if (ocfs2_should_order_data(inode)) | ||
538 | ocfs2_begin_ordered_truncate(inode, 0); | ||
539 | |||
537 | handle = ocfs2_start_trans(osb, OCFS2_INODE_UPDATE_CREDITS); | 540 | handle = ocfs2_start_trans(osb, OCFS2_INODE_UPDATE_CREDITS); |
538 | if (IS_ERR(handle)) { | 541 | if (IS_ERR(handle)) { |
539 | status = PTR_ERR(handle); | 542 | status = PTR_ERR(handle); |
@@ -1100,6 +1103,8 @@ void ocfs2_clear_inode(struct inode *inode) | |||
1100 | oi->ip_last_trans = 0; | 1103 | oi->ip_last_trans = 0; |
1101 | oi->ip_dir_start_lookup = 0; | 1104 | oi->ip_dir_start_lookup = 0; |
1102 | oi->ip_blkno = 0ULL; | 1105 | oi->ip_blkno = 0ULL; |
1106 | jbd2_journal_release_jbd_inode(OCFS2_SB(inode->i_sb)->journal->j_journal, | ||
1107 | &oi->ip_jinode); | ||
1103 | 1108 | ||
1104 | bail: | 1109 | bail: |
1105 | mlog_exit_void(); | 1110 | mlog_exit_void(); |