diff options
| -rw-r--r-- | fs/ocfs2/alloc.c | 25 | ||||
| -rw-r--r-- | fs/ocfs2/aops.c | 6 | ||||
| -rw-r--r-- | fs/ocfs2/buffer_head_io.h | 7 | ||||
| -rw-r--r-- | fs/ocfs2/dir.c | 9 | ||||
| -rw-r--r-- | fs/ocfs2/dlmglue.c | 8 | ||||
| -rw-r--r-- | fs/ocfs2/extent_map.c | 8 | ||||
| -rw-r--r-- | fs/ocfs2/file.c | 7 | ||||
| -rw-r--r-- | fs/ocfs2/inode.c | 4 | ||||
| -rw-r--r-- | fs/ocfs2/journal.c | 2 | ||||
| -rw-r--r-- | fs/ocfs2/localalloc.c | 8 | ||||
| -rw-r--r-- | fs/ocfs2/namei.c | 2 | ||||
| -rw-r--r-- | fs/ocfs2/resize.c | 3 | ||||
| -rw-r--r-- | fs/ocfs2/slot_map.c | 2 | ||||
| -rw-r--r-- | fs/ocfs2/suballoc.c | 11 | ||||
| -rw-r--r-- | fs/ocfs2/symlink.c | 5 | ||||
| -rw-r--r-- | fs/ocfs2/xattr.c | 42 |
16 files changed, 55 insertions, 94 deletions
diff --git a/fs/ocfs2/alloc.c b/fs/ocfs2/alloc.c index a164e09491f8..0cc2deb9394c 100644 --- a/fs/ocfs2/alloc.c +++ b/fs/ocfs2/alloc.c | |||
| @@ -706,7 +706,7 @@ int ocfs2_num_free_extents(struct ocfs2_super *osb, | |||
| 706 | 706 | ||
| 707 | if (last_eb_blk) { | 707 | if (last_eb_blk) { |
| 708 | retval = ocfs2_read_block(inode, last_eb_blk, | 708 | retval = ocfs2_read_block(inode, last_eb_blk, |
| 709 | &eb_bh, OCFS2_BH_CACHED); | 709 | &eb_bh); |
| 710 | if (retval < 0) { | 710 | if (retval < 0) { |
| 711 | mlog_errno(retval); | 711 | mlog_errno(retval); |
| 712 | goto bail; | 712 | goto bail; |
| @@ -1176,7 +1176,7 @@ static int ocfs2_find_branch_target(struct ocfs2_super *osb, | |||
| 1176 | brelse(bh); | 1176 | brelse(bh); |
| 1177 | bh = NULL; | 1177 | bh = NULL; |
| 1178 | 1178 | ||
| 1179 | status = ocfs2_read_block(inode, blkno, &bh, OCFS2_BH_CACHED); | 1179 | status = ocfs2_read_block(inode, blkno, &bh); |
| 1180 | if (status < 0) { | 1180 | if (status < 0) { |
| 1181 | mlog_errno(status); | 1181 | mlog_errno(status); |
| 1182 | goto bail; | 1182 | goto bail; |
| @@ -1540,7 +1540,7 @@ static int __ocfs2_find_path(struct inode *inode, | |||
| 1540 | 1540 | ||
| 1541 | brelse(bh); | 1541 | brelse(bh); |
| 1542 | bh = NULL; | 1542 | bh = NULL; |
| 1543 | ret = ocfs2_read_block(inode, blkno, &bh, OCFS2_BH_CACHED); | 1543 | ret = ocfs2_read_block(inode, blkno, &bh); |
| 1544 | if (ret) { | 1544 | if (ret) { |
| 1545 | mlog_errno(ret); | 1545 | mlog_errno(ret); |
| 1546 | goto out; | 1546 | goto out; |
| @@ -4294,9 +4294,7 @@ static int ocfs2_figure_insert_type(struct inode *inode, | |||
| 4294 | * ocfs2_figure_insert_type() and ocfs2_add_branch() | 4294 | * ocfs2_figure_insert_type() and ocfs2_add_branch() |
| 4295 | * may want it later. | 4295 | * may want it later. |
| 4296 | */ | 4296 | */ |
| 4297 | ret = ocfs2_read_block(inode, | 4297 | ret = ocfs2_read_block(inode, ocfs2_et_get_last_eb_blk(et), &bh); |
| 4298 | ocfs2_et_get_last_eb_blk(et), &bh, | ||
| 4299 | OCFS2_BH_CACHED); | ||
| 4300 | if (ret) { | 4298 | if (ret) { |
| 4301 | mlog_exit(ret); | 4299 | mlog_exit(ret); |
| 4302 | goto out; | 4300 | goto out; |
| @@ -4762,9 +4760,8 @@ static int __ocfs2_mark_extent_written(struct inode *inode, | |||
| 4762 | if (path->p_tree_depth) { | 4760 | if (path->p_tree_depth) { |
| 4763 | struct ocfs2_extent_block *eb; | 4761 | struct ocfs2_extent_block *eb; |
| 4764 | 4762 | ||
| 4765 | ret = ocfs2_read_block(inode, | 4763 | ret = ocfs2_read_block(inode, ocfs2_et_get_last_eb_blk(et), |
| 4766 | ocfs2_et_get_last_eb_blk(et), | 4764 | &last_eb_bh); |
| 4767 | &last_eb_bh, OCFS2_BH_CACHED); | ||
| 4768 | if (ret) { | 4765 | if (ret) { |
| 4769 | mlog_exit(ret); | 4766 | mlog_exit(ret); |
| 4770 | goto out; | 4767 | goto out; |
| @@ -4921,9 +4918,8 @@ static int ocfs2_split_tree(struct inode *inode, struct ocfs2_extent_tree *et, | |||
| 4921 | 4918 | ||
| 4922 | depth = path->p_tree_depth; | 4919 | depth = path->p_tree_depth; |
| 4923 | if (depth > 0) { | 4920 | if (depth > 0) { |
| 4924 | ret = ocfs2_read_block(inode, | 4921 | ret = ocfs2_read_block(inode, ocfs2_et_get_last_eb_blk(et), |
| 4925 | ocfs2_et_get_last_eb_blk(et), | 4922 | &last_eb_bh); |
| 4926 | &last_eb_bh, OCFS2_BH_CACHED); | ||
| 4927 | if (ret < 0) { | 4923 | if (ret < 0) { |
| 4928 | mlog_errno(ret); | 4924 | mlog_errno(ret); |
| 4929 | goto out; | 4925 | goto out; |
| @@ -5590,8 +5586,7 @@ static int ocfs2_get_truncate_log_info(struct ocfs2_super *osb, | |||
| 5590 | goto bail; | 5586 | goto bail; |
| 5591 | } | 5587 | } |
| 5592 | 5588 | ||
| 5593 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &bh, | 5589 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &bh); |
| 5594 | OCFS2_BH_CACHED); | ||
| 5595 | if (status < 0) { | 5590 | if (status < 0) { |
| 5596 | iput(inode); | 5591 | iput(inode); |
| 5597 | mlog_errno(status); | 5592 | mlog_errno(status); |
| @@ -6990,7 +6985,7 @@ int ocfs2_prepare_truncate(struct ocfs2_super *osb, | |||
| 6990 | 6985 | ||
| 6991 | if (fe->id2.i_list.l_tree_depth) { | 6986 | if (fe->id2.i_list.l_tree_depth) { |
| 6992 | status = ocfs2_read_block(inode, le64_to_cpu(fe->i_last_eb_blk), | 6987 | status = ocfs2_read_block(inode, le64_to_cpu(fe->i_last_eb_blk), |
| 6993 | &last_eb_bh, OCFS2_BH_CACHED); | 6988 | &last_eb_bh); |
| 6994 | if (status < 0) { | 6989 | if (status < 0) { |
| 6995 | mlog_errno(status); | 6990 | mlog_errno(status); |
| 6996 | goto bail; | 6991 | goto bail; |
diff --git a/fs/ocfs2/aops.c b/fs/ocfs2/aops.c index f232a0e3c30f..c22543b33420 100644 --- a/fs/ocfs2/aops.c +++ b/fs/ocfs2/aops.c | |||
| @@ -68,8 +68,7 @@ static int ocfs2_symlink_get_block(struct inode *inode, sector_t iblock, | |||
| 68 | goto bail; | 68 | goto bail; |
| 69 | } | 69 | } |
| 70 | 70 | ||
| 71 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, | 71 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &bh); |
| 72 | &bh, OCFS2_BH_CACHED); | ||
| 73 | if (status < 0) { | 72 | if (status < 0) { |
| 74 | mlog_errno(status); | 73 | mlog_errno(status); |
| 75 | goto bail; | 74 | goto bail; |
| @@ -263,8 +262,7 @@ static int ocfs2_readpage_inline(struct inode *inode, struct page *page) | |||
| 263 | BUG_ON(!PageLocked(page)); | 262 | BUG_ON(!PageLocked(page)); |
| 264 | BUG_ON(!(OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL)); | 263 | BUG_ON(!(OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL)); |
| 265 | 264 | ||
| 266 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &di_bh, | 265 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &di_bh); |
| 267 | OCFS2_BH_CACHED); | ||
| 268 | if (ret) { | 266 | if (ret) { |
| 269 | mlog_errno(ret); | 267 | mlog_errno(ret); |
| 270 | goto out; | 268 | goto out; |
diff --git a/fs/ocfs2/buffer_head_io.h b/fs/ocfs2/buffer_head_io.h index fd0d774ac356..a2ef9e5f8bfe 100644 --- a/fs/ocfs2/buffer_head_io.h +++ b/fs/ocfs2/buffer_head_io.h | |||
| @@ -33,8 +33,7 @@ void ocfs2_end_buffer_io_sync(struct buffer_head *bh, | |||
| 33 | 33 | ||
| 34 | static inline int ocfs2_read_block(struct inode *inode, | 34 | static inline int ocfs2_read_block(struct inode *inode, |
| 35 | u64 off, | 35 | u64 off, |
| 36 | struct buffer_head **bh, | 36 | struct buffer_head **bh); |
| 37 | int flags); | ||
| 38 | 37 | ||
| 39 | int ocfs2_write_block(struct ocfs2_super *osb, | 38 | int ocfs2_write_block(struct ocfs2_super *osb, |
| 40 | struct buffer_head *bh, | 39 | struct buffer_head *bh, |
| @@ -54,7 +53,7 @@ int ocfs2_write_super_or_backup(struct ocfs2_super *osb, | |||
| 54 | #define OCFS2_BH_READAHEAD 8 | 53 | #define OCFS2_BH_READAHEAD 8 |
| 55 | 54 | ||
| 56 | static inline int ocfs2_read_block(struct inode *inode, u64 off, | 55 | static inline int ocfs2_read_block(struct inode *inode, u64 off, |
| 57 | struct buffer_head **bh, int flags) | 56 | struct buffer_head **bh) |
| 58 | { | 57 | { |
| 59 | int status = 0; | 58 | int status = 0; |
| 60 | 59 | ||
| @@ -64,7 +63,7 @@ static inline int ocfs2_read_block(struct inode *inode, u64 off, | |||
| 64 | goto bail; | 63 | goto bail; |
| 65 | } | 64 | } |
| 66 | 65 | ||
| 67 | status = ocfs2_read_blocks(inode, off, 1, bh, flags); | 66 | status = ocfs2_read_blocks(inode, off, 1, bh, OCFS2_BH_CACHED); |
| 68 | 67 | ||
| 69 | bail: | 68 | bail: |
| 70 | return status; | 69 | return status; |
diff --git a/fs/ocfs2/dir.c b/fs/ocfs2/dir.c index 828437ca91ba..459e6b8467dc 100644 --- a/fs/ocfs2/dir.c +++ b/fs/ocfs2/dir.c | |||
| @@ -188,8 +188,7 @@ static struct buffer_head *ocfs2_find_entry_id(const char *name, | |||
| 188 | struct ocfs2_dinode *di; | 188 | struct ocfs2_dinode *di; |
| 189 | struct ocfs2_inline_data *data; | 189 | struct ocfs2_inline_data *data; |
| 190 | 190 | ||
| 191 | ret = ocfs2_read_block(dir, OCFS2_I(dir)->ip_blkno, &di_bh, | 191 | ret = ocfs2_read_block(dir, OCFS2_I(dir)->ip_blkno, &di_bh); |
| 192 | OCFS2_BH_CACHED); | ||
| 193 | if (ret) { | 192 | if (ret) { |
| 194 | mlog_errno(ret); | 193 | mlog_errno(ret); |
| 195 | goto out; | 194 | goto out; |
| @@ -417,8 +416,7 @@ static inline int ocfs2_delete_entry_id(handle_t *handle, | |||
| 417 | struct ocfs2_dinode *di; | 416 | struct ocfs2_dinode *di; |
| 418 | struct ocfs2_inline_data *data; | 417 | struct ocfs2_inline_data *data; |
| 419 | 418 | ||
| 420 | ret = ocfs2_read_block(dir, OCFS2_I(dir)->ip_blkno, | 419 | ret = ocfs2_read_block(dir, OCFS2_I(dir)->ip_blkno, &di_bh); |
| 421 | &di_bh, OCFS2_BH_CACHED); | ||
| 422 | if (ret) { | 420 | if (ret) { |
| 423 | mlog_errno(ret); | 421 | mlog_errno(ret); |
| 424 | goto out; | 422 | goto out; |
| @@ -596,8 +594,7 @@ static int ocfs2_dir_foreach_blk_id(struct inode *inode, | |||
| 596 | struct ocfs2_inline_data *data; | 594 | struct ocfs2_inline_data *data; |
| 597 | struct ocfs2_dir_entry *de; | 595 | struct ocfs2_dir_entry *de; |
| 598 | 596 | ||
| 599 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, | 597 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &di_bh); |
| 600 | &di_bh, OCFS2_BH_CACHED); | ||
| 601 | if (ret) { | 598 | if (ret) { |
| 602 | mlog(ML_ERROR, "Unable to read inode block for dir %llu\n", | 599 | mlog(ML_ERROR, "Unable to read inode block for dir %llu\n", |
| 603 | (unsigned long long)OCFS2_I(inode)->ip_blkno); | 600 | (unsigned long long)OCFS2_I(inode)->ip_blkno); |
diff --git a/fs/ocfs2/dlmglue.c b/fs/ocfs2/dlmglue.c index 3b2cd0f87210..ec684426034b 100644 --- a/fs/ocfs2/dlmglue.c +++ b/fs/ocfs2/dlmglue.c | |||
| @@ -2024,8 +2024,7 @@ static int ocfs2_inode_lock_update(struct inode *inode, | |||
| 2024 | } else { | 2024 | } else { |
| 2025 | /* Boo, we have to go to disk. */ | 2025 | /* Boo, we have to go to disk. */ |
| 2026 | /* read bh, cast, ocfs2_refresh_inode */ | 2026 | /* read bh, cast, ocfs2_refresh_inode */ |
| 2027 | status = ocfs2_read_block(inode, oi->ip_blkno, | 2027 | status = ocfs2_read_block(inode, oi->ip_blkno, bh); |
| 2028 | bh, OCFS2_BH_CACHED); | ||
| 2029 | if (status < 0) { | 2028 | if (status < 0) { |
| 2030 | mlog_errno(status); | 2029 | mlog_errno(status); |
| 2031 | goto bail_refresh; | 2030 | goto bail_refresh; |
| @@ -2086,10 +2085,7 @@ static int ocfs2_assign_bh(struct inode *inode, | |||
| 2086 | return 0; | 2085 | return 0; |
| 2087 | } | 2086 | } |
| 2088 | 2087 | ||
| 2089 | status = ocfs2_read_block(inode, | 2088 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, ret_bh); |
| 2090 | OCFS2_I(inode)->ip_blkno, | ||
| 2091 | ret_bh, | ||
| 2092 | OCFS2_BH_CACHED); | ||
| 2093 | if (status < 0) | 2089 | if (status < 0) |
| 2094 | mlog_errno(status); | 2090 | mlog_errno(status); |
| 2095 | 2091 | ||
diff --git a/fs/ocfs2/extent_map.c b/fs/ocfs2/extent_map.c index 5b482214bb75..2baedac58234 100644 --- a/fs/ocfs2/extent_map.c +++ b/fs/ocfs2/extent_map.c | |||
| @@ -293,8 +293,7 @@ static int ocfs2_last_eb_is_empty(struct inode *inode, | |||
| 293 | struct ocfs2_extent_block *eb; | 293 | struct ocfs2_extent_block *eb; |
| 294 | struct ocfs2_extent_list *el; | 294 | struct ocfs2_extent_list *el; |
| 295 | 295 | ||
| 296 | ret = ocfs2_read_block(inode, last_eb_blk, | 296 | ret = ocfs2_read_block(inode, last_eb_blk, &eb_bh); |
| 297 | &eb_bh, OCFS2_BH_CACHED); | ||
| 298 | if (ret) { | 297 | if (ret) { |
| 299 | mlog_errno(ret); | 298 | mlog_errno(ret); |
| 300 | goto out; | 299 | goto out; |
| @@ -384,7 +383,7 @@ static int ocfs2_figure_hole_clusters(struct inode *inode, | |||
| 384 | 383 | ||
| 385 | ret = ocfs2_read_block(inode, | 384 | ret = ocfs2_read_block(inode, |
| 386 | le64_to_cpu(eb->h_next_leaf_blk), | 385 | le64_to_cpu(eb->h_next_leaf_blk), |
| 387 | &next_eb_bh, OCFS2_BH_CACHED); | 386 | &next_eb_bh); |
| 388 | if (ret) { | 387 | if (ret) { |
| 389 | mlog_errno(ret); | 388 | mlog_errno(ret); |
| 390 | goto out; | 389 | goto out; |
| @@ -631,8 +630,7 @@ int ocfs2_get_clusters(struct inode *inode, u32 v_cluster, | |||
| 631 | if (ret == 0) | 630 | if (ret == 0) |
| 632 | goto out; | 631 | goto out; |
| 633 | 632 | ||
| 634 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, | 633 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &di_bh); |
| 635 | &di_bh, OCFS2_BH_CACHED); | ||
| 636 | if (ret) { | 634 | if (ret) { |
| 637 | mlog_errno(ret); | 635 | mlog_errno(ret); |
| 638 | goto out; | 636 | goto out; |
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c index 7a809be54e84..8d3225a78073 100644 --- a/fs/ocfs2/file.c +++ b/fs/ocfs2/file.c | |||
| @@ -545,8 +545,7 @@ static int __ocfs2_extend_allocation(struct inode *inode, u32 logical_start, | |||
| 545 | */ | 545 | */ |
| 546 | BUG_ON(mark_unwritten && !ocfs2_sparse_alloc(osb)); | 546 | BUG_ON(mark_unwritten && !ocfs2_sparse_alloc(osb)); |
| 547 | 547 | ||
| 548 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &bh, | 548 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, &bh); |
| 549 | OCFS2_BH_CACHED); | ||
| 550 | if (status < 0) { | 549 | if (status < 0) { |
| 551 | mlog_errno(status); | 550 | mlog_errno(status); |
| 552 | goto leave; | 551 | goto leave; |
| @@ -1132,7 +1131,7 @@ static int ocfs2_write_remove_suid(struct inode *inode) | |||
| 1132 | struct buffer_head *bh = NULL; | 1131 | struct buffer_head *bh = NULL; |
| 1133 | struct ocfs2_inode_info *oi = OCFS2_I(inode); | 1132 | struct ocfs2_inode_info *oi = OCFS2_I(inode); |
| 1134 | 1133 | ||
| 1135 | ret = ocfs2_read_block(inode, oi->ip_blkno, &bh, OCFS2_BH_CACHED); | 1134 | ret = ocfs2_read_block(inode, oi->ip_blkno, &bh); |
| 1136 | if (ret < 0) { | 1135 | if (ret < 0) { |
| 1137 | mlog_errno(ret); | 1136 | mlog_errno(ret); |
| 1138 | goto out; | 1137 | goto out; |
| @@ -1159,7 +1158,7 @@ static int ocfs2_allocate_unwritten_extents(struct inode *inode, | |||
| 1159 | 1158 | ||
| 1160 | if (OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL) { | 1159 | if (OCFS2_I(inode)->ip_dyn_features & OCFS2_INLINE_DATA_FL) { |
| 1161 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, | 1160 | ret = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, |
| 1162 | &di_bh, OCFS2_BH_CACHED); | 1161 | &di_bh); |
| 1163 | if (ret) { | 1162 | if (ret) { |
| 1164 | mlog_errno(ret); | 1163 | mlog_errno(ret); |
| 1165 | goto out; | 1164 | goto out; |
diff --git a/fs/ocfs2/inode.c b/fs/ocfs2/inode.c index 6ec31b92a47f..c5ee9e3cf80b 100644 --- a/fs/ocfs2/inode.c +++ b/fs/ocfs2/inode.c | |||
| @@ -461,7 +461,7 @@ static int ocfs2_read_locked_inode(struct inode *inode, | |||
| 461 | } | 461 | } |
| 462 | 462 | ||
| 463 | if (can_lock) | 463 | if (can_lock) |
| 464 | status = ocfs2_read_block(inode, args->fi_blkno, &bh, 0); | 464 | status = ocfs2_read_blocks(inode, args->fi_blkno, 1, &bh, 0); |
| 465 | else | 465 | else |
| 466 | status = ocfs2_read_blocks_sync(osb, args->fi_blkno, 1, &bh); | 466 | status = ocfs2_read_blocks_sync(osb, args->fi_blkno, 1, &bh); |
| 467 | if (status < 0) { | 467 | if (status < 0) { |
| @@ -1165,7 +1165,7 @@ struct buffer_head *ocfs2_bread(struct inode *inode, | |||
| 1165 | goto fail; | 1165 | goto fail; |
| 1166 | } | 1166 | } |
| 1167 | 1167 | ||
| 1168 | tmperr = ocfs2_read_block(inode, p_blkno, &bh, readflags); | 1168 | tmperr = ocfs2_read_blocks(inode, p_blkno, 1, &bh, readflags); |
| 1169 | if (tmperr < 0) | 1169 | if (tmperr < 0) |
| 1170 | goto fail; | 1170 | goto fail; |
| 1171 | 1171 | ||
diff --git a/fs/ocfs2/journal.c b/fs/ocfs2/journal.c index 9854fb7315b6..d161fe5e3bde 100644 --- a/fs/ocfs2/journal.c +++ b/fs/ocfs2/journal.c | |||
| @@ -1134,7 +1134,7 @@ static int ocfs2_read_journal_inode(struct ocfs2_super *osb, | |||
| 1134 | } | 1134 | } |
| 1135 | SET_INODE_JOURNAL(inode); | 1135 | SET_INODE_JOURNAL(inode); |
| 1136 | 1136 | ||
| 1137 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, bh, 0); | 1137 | status = ocfs2_read_blocks(inode, OCFS2_I(inode)->ip_blkno, 1, bh, 0); |
| 1138 | if (status < 0) { | 1138 | if (status < 0) { |
| 1139 | mlog_errno(status); | 1139 | mlog_errno(status); |
| 1140 | goto bail; | 1140 | goto bail; |
diff --git a/fs/ocfs2/localalloc.c b/fs/ocfs2/localalloc.c index b77b67bb2776..3ea740d15feb 100644 --- a/fs/ocfs2/localalloc.c +++ b/fs/ocfs2/localalloc.c | |||
| @@ -248,8 +248,8 @@ int ocfs2_load_local_alloc(struct ocfs2_super *osb) | |||
| 248 | goto bail; | 248 | goto bail; |
| 249 | } | 249 | } |
| 250 | 250 | ||
| 251 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, | 251 | status = ocfs2_read_blocks(inode, OCFS2_I(inode)->ip_blkno, 1, |
| 252 | &alloc_bh, 0); | 252 | &alloc_bh, 0); |
| 253 | if (status < 0) { | 253 | if (status < 0) { |
| 254 | mlog_errno(status); | 254 | mlog_errno(status); |
| 255 | goto bail; | 255 | goto bail; |
| @@ -459,8 +459,8 @@ int ocfs2_begin_local_alloc_recovery(struct ocfs2_super *osb, | |||
| 459 | 459 | ||
| 460 | mutex_lock(&inode->i_mutex); | 460 | mutex_lock(&inode->i_mutex); |
| 461 | 461 | ||
| 462 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, | 462 | status = ocfs2_read_blocks(inode, OCFS2_I(inode)->ip_blkno, 1, |
| 463 | &alloc_bh, 0); | 463 | &alloc_bh, 0); |
| 464 | if (status < 0) { | 464 | if (status < 0) { |
| 465 | mlog_errno(status); | 465 | mlog_errno(status); |
| 466 | goto bail; | 466 | goto bail; |
diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c index e5fc9345dd36..485a6aa0ad39 100644 --- a/fs/ocfs2/namei.c +++ b/fs/ocfs2/namei.c | |||
| @@ -1754,7 +1754,7 @@ static int ocfs2_orphan_add(struct ocfs2_super *osb, | |||
| 1754 | 1754 | ||
| 1755 | status = ocfs2_read_block(orphan_dir_inode, | 1755 | status = ocfs2_read_block(orphan_dir_inode, |
| 1756 | OCFS2_I(orphan_dir_inode)->ip_blkno, | 1756 | OCFS2_I(orphan_dir_inode)->ip_blkno, |
| 1757 | &orphan_dir_bh, OCFS2_BH_CACHED); | 1757 | &orphan_dir_bh); |
| 1758 | if (status < 0) { | 1758 | if (status < 0) { |
| 1759 | mlog_errno(status); | 1759 | mlog_errno(status); |
| 1760 | goto leave; | 1760 | goto leave; |
diff --git a/fs/ocfs2/resize.c b/fs/ocfs2/resize.c index 92dcd9350560..ffd48db229a7 100644 --- a/fs/ocfs2/resize.c +++ b/fs/ocfs2/resize.c | |||
| @@ -332,8 +332,7 @@ int ocfs2_group_extend(struct inode * inode, int new_clusters) | |||
| 332 | lgd_blkno = ocfs2_which_cluster_group(main_bm_inode, | 332 | lgd_blkno = ocfs2_which_cluster_group(main_bm_inode, |
| 333 | first_new_cluster - 1); | 333 | first_new_cluster - 1); |
| 334 | 334 | ||
| 335 | ret = ocfs2_read_block(main_bm_inode, lgd_blkno, &group_bh, | 335 | ret = ocfs2_read_block(main_bm_inode, lgd_blkno, &group_bh); |
| 336 | OCFS2_BH_CACHED); | ||
| 337 | if (ret < 0) { | 336 | if (ret < 0) { |
| 338 | mlog_errno(ret); | 337 | mlog_errno(ret); |
| 339 | goto out_unlock; | 338 | goto out_unlock; |
diff --git a/fs/ocfs2/slot_map.c b/fs/ocfs2/slot_map.c index 82d986bff7fe..357d3fe18c3f 100644 --- a/fs/ocfs2/slot_map.c +++ b/fs/ocfs2/slot_map.c | |||
| @@ -403,7 +403,7 @@ static int ocfs2_map_slot_buffers(struct ocfs2_super *osb, | |||
| 403 | (unsigned long long)blkno); | 403 | (unsigned long long)blkno); |
| 404 | 404 | ||
| 405 | bh = NULL; /* Acquire a fresh bh */ | 405 | bh = NULL; /* Acquire a fresh bh */ |
| 406 | status = ocfs2_read_block(si->si_inode, blkno, &bh, 0); | 406 | status = ocfs2_read_blocks(si->si_inode, blkno, 1, &bh, 0); |
| 407 | if (status < 0) { | 407 | if (status < 0) { |
| 408 | mlog_errno(status); | 408 | mlog_errno(status); |
| 409 | goto bail; | 409 | goto bail; |
diff --git a/fs/ocfs2/suballoc.c b/fs/ocfs2/suballoc.c index f0056b7d4353..c5ff18b46b57 100644 --- a/fs/ocfs2/suballoc.c +++ b/fs/ocfs2/suballoc.c | |||
| @@ -1172,8 +1172,7 @@ static int ocfs2_search_one_group(struct ocfs2_alloc_context *ac, | |||
| 1172 | struct ocfs2_group_desc *gd; | 1172 | struct ocfs2_group_desc *gd; |
| 1173 | struct inode *alloc_inode = ac->ac_inode; | 1173 | struct inode *alloc_inode = ac->ac_inode; |
| 1174 | 1174 | ||
| 1175 | ret = ocfs2_read_block(alloc_inode, gd_blkno, | 1175 | ret = ocfs2_read_block(alloc_inode, gd_blkno, &group_bh); |
| 1176 | &group_bh, OCFS2_BH_CACHED); | ||
| 1177 | if (ret < 0) { | 1176 | if (ret < 0) { |
| 1178 | mlog_errno(ret); | 1177 | mlog_errno(ret); |
| 1179 | return ret; | 1178 | return ret; |
| @@ -1244,7 +1243,7 @@ static int ocfs2_search_chain(struct ocfs2_alloc_context *ac, | |||
| 1244 | 1243 | ||
| 1245 | status = ocfs2_read_block(alloc_inode, | 1244 | status = ocfs2_read_block(alloc_inode, |
| 1246 | le64_to_cpu(cl->cl_recs[chain].c_blkno), | 1245 | le64_to_cpu(cl->cl_recs[chain].c_blkno), |
| 1247 | &group_bh, OCFS2_BH_CACHED); | 1246 | &group_bh); |
| 1248 | if (status < 0) { | 1247 | if (status < 0) { |
| 1249 | mlog_errno(status); | 1248 | mlog_errno(status); |
| 1250 | goto bail; | 1249 | goto bail; |
| @@ -1273,8 +1272,7 @@ static int ocfs2_search_chain(struct ocfs2_alloc_context *ac, | |||
| 1273 | prev_group_bh = group_bh; | 1272 | prev_group_bh = group_bh; |
| 1274 | group_bh = NULL; | 1273 | group_bh = NULL; |
| 1275 | status = ocfs2_read_block(alloc_inode, | 1274 | status = ocfs2_read_block(alloc_inode, |
| 1276 | next_group, &group_bh, | 1275 | next_group, &group_bh); |
| 1277 | OCFS2_BH_CACHED); | ||
| 1278 | if (status < 0) { | 1276 | if (status < 0) { |
| 1279 | mlog_errno(status); | 1277 | mlog_errno(status); |
| 1280 | goto bail; | 1278 | goto bail; |
| @@ -1795,8 +1793,7 @@ int ocfs2_free_suballoc_bits(handle_t *handle, | |||
| 1795 | (unsigned long long)OCFS2_I(alloc_inode)->ip_blkno, count, | 1793 | (unsigned long long)OCFS2_I(alloc_inode)->ip_blkno, count, |
| 1796 | (unsigned long long)bg_blkno, start_bit); | 1794 | (unsigned long long)bg_blkno, start_bit); |
| 1797 | 1795 | ||
| 1798 | status = ocfs2_read_block(alloc_inode, bg_blkno, &group_bh, | 1796 | status = ocfs2_read_block(alloc_inode, bg_blkno, &group_bh); |
| 1799 | OCFS2_BH_CACHED); | ||
| 1800 | if (status < 0) { | 1797 | if (status < 0) { |
| 1801 | mlog_errno(status); | 1798 | mlog_errno(status); |
| 1802 | goto bail; | 1799 | goto bail; |
diff --git a/fs/ocfs2/symlink.c b/fs/ocfs2/symlink.c index 8788dc26316d..cbd03dfdc7b9 100644 --- a/fs/ocfs2/symlink.c +++ b/fs/ocfs2/symlink.c | |||
| @@ -84,10 +84,7 @@ static char *ocfs2_fast_symlink_getlink(struct inode *inode, | |||
| 84 | 84 | ||
| 85 | mlog_entry_void(); | 85 | mlog_entry_void(); |
| 86 | 86 | ||
| 87 | status = ocfs2_read_block(inode, | 87 | status = ocfs2_read_block(inode, OCFS2_I(inode)->ip_blkno, bh); |
| 88 | OCFS2_I(inode)->ip_blkno, | ||
| 89 | bh, | ||
| 90 | OCFS2_BH_CACHED); | ||
| 91 | if (status < 0) { | 88 | if (status < 0) { |
| 92 | mlog_errno(status); | 89 | mlog_errno(status); |
| 93 | link = ERR_PTR(status); | 90 | link = ERR_PTR(status); |
diff --git a/fs/ocfs2/xattr.c b/fs/ocfs2/xattr.c index 63037bd7892f..c25780a70dfd 100644 --- a/fs/ocfs2/xattr.c +++ b/fs/ocfs2/xattr.c | |||
| @@ -537,9 +537,7 @@ static int ocfs2_xattr_block_list(struct inode *inode, | |||
| 537 | if (!di->i_xattr_loc) | 537 | if (!di->i_xattr_loc) |
| 538 | return ret; | 538 | return ret; |
| 539 | 539 | ||
| 540 | ret = ocfs2_read_block(inode, | 540 | ret = ocfs2_read_block(inode, le64_to_cpu(di->i_xattr_loc), &blk_bh); |
| 541 | le64_to_cpu(di->i_xattr_loc), | ||
| 542 | &blk_bh, OCFS2_BH_CACHED); | ||
| 543 | if (ret < 0) { | 541 | if (ret < 0) { |
| 544 | mlog_errno(ret); | 542 | mlog_errno(ret); |
| 545 | return ret; | 543 | return ret; |
| @@ -672,8 +670,7 @@ static int ocfs2_xattr_get_value_outside(struct inode *inode, | |||
| 672 | blkno = ocfs2_clusters_to_blocks(inode->i_sb, p_cluster); | 670 | blkno = ocfs2_clusters_to_blocks(inode->i_sb, p_cluster); |
| 673 | /* Copy ocfs2_xattr_value */ | 671 | /* Copy ocfs2_xattr_value */ |
| 674 | for (i = 0; i < num_clusters * bpc; i++, blkno++) { | 672 | for (i = 0; i < num_clusters * bpc; i++, blkno++) { |
| 675 | ret = ocfs2_read_block(inode, blkno, | 673 | ret = ocfs2_read_block(inode, blkno, &bh); |
| 676 | &bh, OCFS2_BH_CACHED); | ||
| 677 | if (ret) { | 674 | if (ret) { |
| 678 | mlog_errno(ret); | 675 | mlog_errno(ret); |
| 679 | goto out; | 676 | goto out; |
| @@ -764,9 +761,7 @@ static int ocfs2_xattr_block_get(struct inode *inode, | |||
| 764 | 761 | ||
| 765 | memset(&xs->bucket, 0, sizeof(xs->bucket)); | 762 | memset(&xs->bucket, 0, sizeof(xs->bucket)); |
| 766 | 763 | ||
| 767 | ret = ocfs2_read_block(inode, | 764 | ret = ocfs2_read_block(inode, le64_to_cpu(di->i_xattr_loc), &blk_bh); |
| 768 | le64_to_cpu(di->i_xattr_loc), | ||
| 769 | &blk_bh, OCFS2_BH_CACHED); | ||
| 770 | if (ret < 0) { | 765 | if (ret < 0) { |
| 771 | mlog_errno(ret); | 766 | mlog_errno(ret); |
| 772 | return ret; | 767 | return ret; |
| @@ -922,8 +917,7 @@ static int __ocfs2_xattr_set_value_outside(struct inode *inode, | |||
| 922 | blkno = ocfs2_clusters_to_blocks(inode->i_sb, p_cluster); | 917 | blkno = ocfs2_clusters_to_blocks(inode->i_sb, p_cluster); |
| 923 | 918 | ||
| 924 | for (i = 0; i < num_clusters * bpc; i++, blkno++) { | 919 | for (i = 0; i < num_clusters * bpc; i++, blkno++) { |
| 925 | ret = ocfs2_read_block(inode, blkno, | 920 | ret = ocfs2_read_block(inode, blkno, &bh); |
| 926 | &bh, OCFS2_BH_CACHED); | ||
| 927 | if (ret) { | 921 | if (ret) { |
| 928 | mlog_errno(ret); | 922 | mlog_errno(ret); |
| 929 | goto out_commit; | 923 | goto out_commit; |
| @@ -1514,8 +1508,7 @@ static int ocfs2_xattr_free_block(struct inode *inode, | |||
| 1514 | u64 blk, bg_blkno; | 1508 | u64 blk, bg_blkno; |
| 1515 | u16 bit; | 1509 | u16 bit; |
| 1516 | 1510 | ||
| 1517 | ret = ocfs2_read_block(inode, block, &blk_bh, | 1511 | ret = ocfs2_read_block(inode, block, &blk_bh); |
| 1518 | OCFS2_BH_CACHED); | ||
| 1519 | if (ret < 0) { | 1512 | if (ret < 0) { |
| 1520 | mlog_errno(ret); | 1513 | mlog_errno(ret); |
| 1521 | goto out; | 1514 | goto out; |
| @@ -1773,9 +1766,7 @@ static int ocfs2_xattr_block_find(struct inode *inode, | |||
| 1773 | if (!di->i_xattr_loc) | 1766 | if (!di->i_xattr_loc) |
| 1774 | return ret; | 1767 | return ret; |
| 1775 | 1768 | ||
| 1776 | ret = ocfs2_read_block(inode, | 1769 | ret = ocfs2_read_block(inode, le64_to_cpu(di->i_xattr_loc), &blk_bh); |
| 1777 | le64_to_cpu(di->i_xattr_loc), | ||
| 1778 | &blk_bh, OCFS2_BH_CACHED); | ||
| 1779 | if (ret < 0) { | 1770 | if (ret < 0) { |
| 1780 | mlog_errno(ret); | 1771 | mlog_errno(ret); |
| 1781 | return ret; | 1772 | return ret; |
| @@ -2216,9 +2207,8 @@ static int ocfs2_find_xe_in_bucket(struct inode *inode, | |||
| 2216 | break; | 2207 | break; |
| 2217 | } | 2208 | } |
| 2218 | 2209 | ||
| 2219 | ret = ocfs2_read_block(inode, | 2210 | ret = ocfs2_read_block(inode, header_bh->b_blocknr + block_off, |
| 2220 | header_bh->b_blocknr + block_off, | 2211 | &name_bh); |
| 2221 | &name_bh, OCFS2_BH_CACHED); | ||
| 2222 | if (ret) { | 2212 | if (ret) { |
| 2223 | mlog_errno(ret); | 2213 | mlog_errno(ret); |
| 2224 | break; | 2214 | break; |
| @@ -2269,7 +2259,7 @@ static int ocfs2_xattr_bucket_find(struct inode *inode, | |||
| 2269 | u32 last_hash; | 2259 | u32 last_hash; |
| 2270 | u64 blkno; | 2260 | u64 blkno; |
| 2271 | 2261 | ||
| 2272 | ret = ocfs2_read_block(inode, p_blkno, &bh, OCFS2_BH_CACHED); | 2262 | ret = ocfs2_read_block(inode, p_blkno, &bh); |
| 2273 | if (ret) { | 2263 | if (ret) { |
| 2274 | mlog_errno(ret); | 2264 | mlog_errno(ret); |
| 2275 | goto out; | 2265 | goto out; |
| @@ -2285,7 +2275,7 @@ static int ocfs2_xattr_bucket_find(struct inode *inode, | |||
| 2285 | 2275 | ||
| 2286 | blkno = p_blkno + bucket * blk_per_bucket; | 2276 | blkno = p_blkno + bucket * blk_per_bucket; |
| 2287 | 2277 | ||
| 2288 | ret = ocfs2_read_block(inode, blkno, &bh, OCFS2_BH_CACHED); | 2278 | ret = ocfs2_read_block(inode, blkno, &bh); |
| 2289 | if (ret) { | 2279 | if (ret) { |
| 2290 | mlog_errno(ret); | 2280 | mlog_errno(ret); |
| 2291 | goto out; | 2281 | goto out; |
| @@ -2898,7 +2888,6 @@ static int ocfs2_defrag_xattr_bucket(struct inode *inode, | |||
| 2898 | u64 blkno = bucket->bhs[0]->b_blocknr; | 2888 | u64 blkno = bucket->bhs[0]->b_blocknr; |
| 2899 | u16 blk_per_bucket = ocfs2_blocks_per_xattr_bucket(inode->i_sb); | 2889 | u16 blk_per_bucket = ocfs2_blocks_per_xattr_bucket(inode->i_sb); |
| 2900 | u16 xh_free_start; | 2890 | u16 xh_free_start; |
| 2901 | struct ocfs2_super *osb = OCFS2_SB(inode->i_sb); | ||
| 2902 | size_t blocksize = inode->i_sb->s_blocksize; | 2891 | size_t blocksize = inode->i_sb->s_blocksize; |
| 2903 | handle_t *handle; | 2892 | handle_t *handle; |
| 2904 | struct buffer_head **bhs; | 2893 | struct buffer_head **bhs; |
| @@ -3110,8 +3099,7 @@ static int ocfs2_mv_xattr_bucket_cross_cluster(struct inode *inode, | |||
| 3110 | goto out; | 3099 | goto out; |
| 3111 | } | 3100 | } |
| 3112 | 3101 | ||
| 3113 | ret = ocfs2_read_block(inode, prev_blkno, | 3102 | ret = ocfs2_read_block(inode, prev_blkno, &old_bh); |
| 3114 | &old_bh, OCFS2_BH_CACHED); | ||
| 3115 | if (ret < 0) { | 3103 | if (ret < 0) { |
| 3116 | mlog_errno(ret); | 3104 | mlog_errno(ret); |
| 3117 | brelse(new_bh); | 3105 | brelse(new_bh); |
| @@ -3481,7 +3469,7 @@ static int ocfs2_cp_xattr_cluster(struct inode *inode, | |||
| 3481 | ocfs2_journal_dirty(handle, first_bh); | 3469 | ocfs2_journal_dirty(handle, first_bh); |
| 3482 | 3470 | ||
| 3483 | /* update the new bucket header. */ | 3471 | /* update the new bucket header. */ |
| 3484 | ret = ocfs2_read_block(inode, to_blk_start, &bh, OCFS2_BH_CACHED); | 3472 | ret = ocfs2_read_block(inode, to_blk_start, &bh); |
| 3485 | if (ret < 0) { | 3473 | if (ret < 0) { |
| 3486 | mlog_errno(ret); | 3474 | mlog_errno(ret); |
| 3487 | goto out; | 3475 | goto out; |
| @@ -3868,8 +3856,7 @@ static int ocfs2_add_new_xattr_bucket(struct inode *inode, | |||
| 3868 | goto out; | 3856 | goto out; |
| 3869 | } | 3857 | } |
| 3870 | 3858 | ||
| 3871 | ret = ocfs2_read_block(inode, p_blkno, | 3859 | ret = ocfs2_read_block(inode, p_blkno, &first_bh); |
| 3872 | &first_bh, OCFS2_BH_CACHED); | ||
| 3873 | if (ret) { | 3860 | if (ret) { |
| 3874 | mlog_errno(ret); | 3861 | mlog_errno(ret); |
| 3875 | goto out; | 3862 | goto out; |
| @@ -4220,8 +4207,7 @@ static int ocfs2_xattr_bucket_value_truncate(struct inode *inode, | |||
| 4220 | BUG_ON(value_blk != (offset + OCFS2_XATTR_ROOT_SIZE - 1) / blocksize); | 4207 | BUG_ON(value_blk != (offset + OCFS2_XATTR_ROOT_SIZE - 1) / blocksize); |
| 4221 | value_blk += header_bh->b_blocknr; | 4208 | value_blk += header_bh->b_blocknr; |
| 4222 | 4209 | ||
| 4223 | ret = ocfs2_read_block(inode, value_blk, | 4210 | ret = ocfs2_read_block(inode, value_blk, &value_bh); |
| 4224 | &value_bh, OCFS2_BH_CACHED); | ||
| 4225 | if (ret) { | 4211 | if (ret) { |
| 4226 | mlog_errno(ret); | 4212 | mlog_errno(ret); |
| 4227 | goto out; | 4213 | goto out; |
