Skip to content

Commit

Permalink
nilfs2: eliminate nilfs_btnode_get function
Browse files Browse the repository at this point in the history
This removes the obsolete nilfs_btnode_get() function and makes
nilfs_btree_get_block() directly call nilfs_btnode_submit_block().

This expansion will provide better opportunity for code optimization.

Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
  • Loading branch information
Ryusuke Konishi committed Nov 20, 2009
1 parent 75f65ed commit 1376e93
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 24 deletions.
21 changes: 0 additions & 21 deletions fs/nilfs2/btnode.c
Original file line number Diff line number Diff line change
Expand Up @@ -147,27 +147,6 @@ int nilfs_btnode_submit_block(struct address_space *btnc, __u64 blocknr,
return err;
}

int nilfs_btnode_get(struct address_space *btnc, __u64 blocknr,
sector_t pblocknr, struct buffer_head **pbh)
{
struct buffer_head *bh;
int err;

err = nilfs_btnode_submit_block(btnc, blocknr, pblocknr, pbh);
if (err == -EEXIST) /* internal code (cache hit) */
return 0;
if (unlikely(err))
return err;

bh = *pbh;
wait_on_buffer(bh);
if (!buffer_uptodate(bh)) {
brelse(bh);
return -EIO;
}
return 0;
}

/**
* nilfs_btnode_delete - delete B-tree node buffer
* @bh: buffer to be deleted
Expand Down
2 changes: 0 additions & 2 deletions fs/nilfs2/btnode.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,6 @@ struct buffer_head *nilfs_btnode_create_block(struct address_space *btnc,
__u64 blocknr);
int nilfs_btnode_submit_block(struct address_space *, __u64, sector_t,
struct buffer_head **);
int nilfs_btnode_get(struct address_space *, __u64, sector_t,
struct buffer_head **);
void nilfs_btnode_delete(struct buffer_head *);
int nilfs_btnode_prepare_change_key(struct address_space *,
struct nilfs_btnode_chkey_ctxt *);
Expand Down
13 changes: 12 additions & 1 deletion fs/nilfs2/btree.c
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,18 @@ static int nilfs_btree_get_block(const struct nilfs_btree *btree, __u64 ptr,
{
struct address_space *btnc =
&NILFS_BMAP_I((struct nilfs_bmap *)btree)->i_btnode_cache;
return nilfs_btnode_get(btnc, ptr, 0, bhp, 0);
int err;

err = nilfs_btnode_submit_block(btnc, ptr, 0, bhp);
if (err)
return err == -EEXIST ? 0 : err;

wait_on_buffer(*bhp);
if (!buffer_uptodate(*bhp)) {
brelse(*bhp);
return -EIO;
}
return 0;
}

static int nilfs_btree_get_new_block(const struct nilfs_btree *btree,
Expand Down

0 comments on commit 1376e93

Please sign in to comment.