diff options
author | Joel Becker <joel.becker@oracle.com> | 2008-08-22 15:46:09 -0400 |
---|---|---|
committer | Mark Fasheh <mfasheh@suse.com> | 2008-10-13 19:57:05 -0400 |
commit | 8d6220d6a74a33552cf877bcea25503d7f6a59e6 (patch) | |
tree | 2c3f662c55ab4a0a22989c06edf0d027387bfbed /fs/ocfs2/dir.c | |
parent | 1625f8ac151743e452ec062c2989669c508ffa48 (diff) |
ocfs2: Change ocfs2_get_*_extent_tree() to ocfs2_init_*_extent_tree()
The original get/put_extent_tree() functions held a reference on
et_root_bh. However, every single caller already has a safe reference,
making the get/put cycle irrelevant.
We change ocfs2_get_*_extent_tree() to ocfs2_init_*_extent_tree(). It
no longer gets a reference on et_root_bh. ocfs2_put_extent_tree() is
removed. Callers now have a simpler init+use pattern.
Signed-off-by: Joel Becker <joel.becker@oracle.com>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2/dir.c')
-rw-r--r-- | fs/ocfs2/dir.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/ocfs2/dir.c b/fs/ocfs2/dir.c index 2cdc55390348..167e6c96277d 100644 --- a/fs/ocfs2/dir.c +++ b/fs/ocfs2/dir.c | |||
@@ -1194,7 +1194,7 @@ static int ocfs2_expand_inline_dir(struct inode *dir, struct buffer_head *di_bh, | |||
1194 | handle_t *handle; | 1194 | handle_t *handle; |
1195 | struct ocfs2_extent_tree et; | 1195 | struct ocfs2_extent_tree et; |
1196 | 1196 | ||
1197 | ocfs2_get_dinode_extent_tree(&et, dir, di_bh); | 1197 | ocfs2_init_dinode_extent_tree(&et, dir, di_bh); |
1198 | 1198 | ||
1199 | alloc = ocfs2_clusters_for_bytes(sb, bytes); | 1199 | alloc = ocfs2_clusters_for_bytes(sb, bytes); |
1200 | 1200 | ||
@@ -1363,7 +1363,6 @@ out: | |||
1363 | 1363 | ||
1364 | brelse(dirdata_bh); | 1364 | brelse(dirdata_bh); |
1365 | 1365 | ||
1366 | ocfs2_put_extent_tree(&et); | ||
1367 | return ret; | 1366 | return ret; |
1368 | } | 1367 | } |
1369 | 1368 | ||
@@ -1485,9 +1484,8 @@ static int ocfs2_extend_dir(struct ocfs2_super *osb, | |||
1485 | spin_lock(&OCFS2_I(dir)->ip_lock); | 1484 | spin_lock(&OCFS2_I(dir)->ip_lock); |
1486 | if (dir_i_size == ocfs2_clusters_to_bytes(sb, OCFS2_I(dir)->ip_clusters)) { | 1485 | if (dir_i_size == ocfs2_clusters_to_bytes(sb, OCFS2_I(dir)->ip_clusters)) { |
1487 | spin_unlock(&OCFS2_I(dir)->ip_lock); | 1486 | spin_unlock(&OCFS2_I(dir)->ip_lock); |
1488 | ocfs2_get_dinode_extent_tree(&et, dir, parent_fe_bh); | 1487 | ocfs2_init_dinode_extent_tree(&et, dir, parent_fe_bh); |
1489 | num_free_extents = ocfs2_num_free_extents(osb, dir, &et); | 1488 | num_free_extents = ocfs2_num_free_extents(osb, dir, &et); |
1490 | ocfs2_put_extent_tree(&et); | ||
1491 | if (num_free_extents < 0) { | 1489 | if (num_free_extents < 0) { |
1492 | status = num_free_extents; | 1490 | status = num_free_extents; |
1493 | mlog_errno(status); | 1491 | mlog_errno(status); |