diff options
Diffstat (limited to 'fs/ocfs2/quota_local.c')
-rw-r--r-- | fs/ocfs2/quota_local.c | 50 |
1 files changed, 12 insertions, 38 deletions
diff --git a/fs/ocfs2/quota_local.c b/fs/ocfs2/quota_local.c index a6467f3d262e..a8f4cea1b824 100644 --- a/fs/ocfs2/quota_local.c +++ b/fs/ocfs2/quota_local.c | |||
@@ -118,12 +118,8 @@ static int ocfs2_modify_bh(struct inode *inode, struct buffer_head *bh, | |||
118 | lock_buffer(bh); | 118 | lock_buffer(bh); |
119 | modify(bh, private); | 119 | modify(bh, private); |
120 | unlock_buffer(bh); | 120 | unlock_buffer(bh); |
121 | status = ocfs2_journal_dirty(handle, bh); | 121 | ocfs2_journal_dirty(handle, bh); |
122 | if (status < 0) { | 122 | |
123 | mlog_errno(status); | ||
124 | ocfs2_commit_trans(OCFS2_SB(sb), handle); | ||
125 | return status; | ||
126 | } | ||
127 | status = ocfs2_commit_trans(OCFS2_SB(sb), handle); | 123 | status = ocfs2_commit_trans(OCFS2_SB(sb), handle); |
128 | if (status < 0) { | 124 | if (status < 0) { |
129 | mlog_errno(status); | 125 | mlog_errno(status); |
@@ -522,9 +518,7 @@ static int ocfs2_recover_local_quota_file(struct inode *lqinode, | |||
522 | ocfs2_clear_bit(bit, dchunk->dqc_bitmap); | 518 | ocfs2_clear_bit(bit, dchunk->dqc_bitmap); |
523 | le32_add_cpu(&dchunk->dqc_free, 1); | 519 | le32_add_cpu(&dchunk->dqc_free, 1); |
524 | unlock_buffer(qbh); | 520 | unlock_buffer(qbh); |
525 | status = ocfs2_journal_dirty(handle, qbh); | 521 | ocfs2_journal_dirty(handle, qbh); |
526 | if (status < 0) | ||
527 | mlog_errno(status); | ||
528 | out_commit: | 522 | out_commit: |
529 | mutex_unlock(&sb_dqopt(sb)->dqio_mutex); | 523 | mutex_unlock(&sb_dqopt(sb)->dqio_mutex); |
530 | ocfs2_commit_trans(OCFS2_SB(sb), handle); | 524 | ocfs2_commit_trans(OCFS2_SB(sb), handle); |
@@ -630,9 +624,7 @@ int ocfs2_finish_quota_recovery(struct ocfs2_super *osb, | |||
630 | lock_buffer(bh); | 624 | lock_buffer(bh); |
631 | ldinfo->dqi_flags = cpu_to_le32(flags | OLQF_CLEAN); | 625 | ldinfo->dqi_flags = cpu_to_le32(flags | OLQF_CLEAN); |
632 | unlock_buffer(bh); | 626 | unlock_buffer(bh); |
633 | status = ocfs2_journal_dirty(handle, bh); | 627 | ocfs2_journal_dirty(handle, bh); |
634 | if (status < 0) | ||
635 | mlog_errno(status); | ||
636 | out_trans: | 628 | out_trans: |
637 | ocfs2_commit_trans(osb, handle); | 629 | ocfs2_commit_trans(osb, handle); |
638 | out_bh: | 630 | out_bh: |
@@ -1008,11 +1000,7 @@ static struct ocfs2_quota_chunk *ocfs2_local_quota_add_chunk( | |||
1008 | sb->s_blocksize - sizeof(struct ocfs2_local_disk_chunk) - | 1000 | sb->s_blocksize - sizeof(struct ocfs2_local_disk_chunk) - |
1009 | OCFS2_QBLK_RESERVED_SPACE); | 1001 | OCFS2_QBLK_RESERVED_SPACE); |
1010 | unlock_buffer(bh); | 1002 | unlock_buffer(bh); |
1011 | status = ocfs2_journal_dirty(handle, bh); | 1003 | ocfs2_journal_dirty(handle, bh); |
1012 | if (status < 0) { | ||
1013 | mlog_errno(status); | ||
1014 | goto out_trans; | ||
1015 | } | ||
1016 | 1004 | ||
1017 | /* Initialize new block with structures */ | 1005 | /* Initialize new block with structures */ |
1018 | down_read(&OCFS2_I(lqinode)->ip_alloc_sem); | 1006 | down_read(&OCFS2_I(lqinode)->ip_alloc_sem); |
@@ -1039,11 +1027,7 @@ static struct ocfs2_quota_chunk *ocfs2_local_quota_add_chunk( | |||
1039 | lock_buffer(dbh); | 1027 | lock_buffer(dbh); |
1040 | memset(dbh->b_data, 0, sb->s_blocksize - OCFS2_QBLK_RESERVED_SPACE); | 1028 | memset(dbh->b_data, 0, sb->s_blocksize - OCFS2_QBLK_RESERVED_SPACE); |
1041 | unlock_buffer(dbh); | 1029 | unlock_buffer(dbh); |
1042 | status = ocfs2_journal_dirty(handle, dbh); | 1030 | ocfs2_journal_dirty(handle, dbh); |
1043 | if (status < 0) { | ||
1044 | mlog_errno(status); | ||
1045 | goto out_trans; | ||
1046 | } | ||
1047 | 1031 | ||
1048 | /* Update local quotafile info */ | 1032 | /* Update local quotafile info */ |
1049 | oinfo->dqi_blocks += 2; | 1033 | oinfo->dqi_blocks += 2; |
@@ -1154,11 +1138,8 @@ static struct ocfs2_quota_chunk *ocfs2_extend_local_quota_file( | |||
1154 | lock_buffer(bh); | 1138 | lock_buffer(bh); |
1155 | memset(bh->b_data, 0, sb->s_blocksize); | 1139 | memset(bh->b_data, 0, sb->s_blocksize); |
1156 | unlock_buffer(bh); | 1140 | unlock_buffer(bh); |
1157 | status = ocfs2_journal_dirty(handle, bh); | 1141 | ocfs2_journal_dirty(handle, bh); |
1158 | if (status < 0) { | 1142 | |
1159 | mlog_errno(status); | ||
1160 | goto out_trans; | ||
1161 | } | ||
1162 | /* Update chunk header */ | 1143 | /* Update chunk header */ |
1163 | status = ocfs2_journal_access_dq(handle, INODE_CACHE(lqinode), | 1144 | status = ocfs2_journal_access_dq(handle, INODE_CACHE(lqinode), |
1164 | chunk->qc_headerbh, | 1145 | chunk->qc_headerbh, |
@@ -1172,11 +1153,8 @@ static struct ocfs2_quota_chunk *ocfs2_extend_local_quota_file( | |||
1172 | lock_buffer(chunk->qc_headerbh); | 1153 | lock_buffer(chunk->qc_headerbh); |
1173 | le32_add_cpu(&dchunk->dqc_free, ol_quota_entries_per_block(sb)); | 1154 | le32_add_cpu(&dchunk->dqc_free, ol_quota_entries_per_block(sb)); |
1174 | unlock_buffer(chunk->qc_headerbh); | 1155 | unlock_buffer(chunk->qc_headerbh); |
1175 | status = ocfs2_journal_dirty(handle, chunk->qc_headerbh); | 1156 | ocfs2_journal_dirty(handle, chunk->qc_headerbh); |
1176 | if (status < 0) { | 1157 | |
1177 | mlog_errno(status); | ||
1178 | goto out_trans; | ||
1179 | } | ||
1180 | /* Update file header */ | 1158 | /* Update file header */ |
1181 | oinfo->dqi_blocks++; | 1159 | oinfo->dqi_blocks++; |
1182 | status = ocfs2_local_write_info(sb, type); | 1160 | status = ocfs2_local_write_info(sb, type); |
@@ -1311,12 +1289,8 @@ static int ocfs2_local_release_dquot(struct dquot *dquot) | |||
1311 | ocfs2_clear_bit(offset, dchunk->dqc_bitmap); | 1289 | ocfs2_clear_bit(offset, dchunk->dqc_bitmap); |
1312 | le32_add_cpu(&dchunk->dqc_free, 1); | 1290 | le32_add_cpu(&dchunk->dqc_free, 1); |
1313 | unlock_buffer(od->dq_chunk->qc_headerbh); | 1291 | unlock_buffer(od->dq_chunk->qc_headerbh); |
1314 | status = ocfs2_journal_dirty(handle, od->dq_chunk->qc_headerbh); | 1292 | ocfs2_journal_dirty(handle, od->dq_chunk->qc_headerbh); |
1315 | if (status < 0) { | 1293 | |
1316 | mlog_errno(status); | ||
1317 | goto out; | ||
1318 | } | ||
1319 | status = 0; | ||
1320 | out: | 1294 | out: |
1321 | /* Clear the read bit so that next time someone uses this | 1295 | /* Clear the read bit so that next time someone uses this |
1322 | * dquot he reads fresh info from disk and allocates local | 1296 | * dquot he reads fresh info from disk and allocates local |