Skip to content

Commit

Permalink
xfs: clean up xfs_bmap_get_bp
Browse files Browse the repository at this point in the history
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
  • Loading branch information
Christoph Hellwig authored and Alex Elder committed Jul 26, 2010
1 parent 5d18898 commit ecd7f08
Showing 1 changed file with 18 additions and 25 deletions.
43 changes: 18 additions & 25 deletions fs/xfs/xfs_bmap.c
Original file line number Diff line number Diff line change
Expand Up @@ -5648,41 +5648,34 @@ xfs_bmap_eof(
}

#ifdef DEBUG
STATIC
xfs_buf_t *
STATIC struct xfs_buf *
xfs_bmap_get_bp(
xfs_btree_cur_t *cur,
struct xfs_btree_cur *cur,
xfs_fsblock_t bno)
{
int i;
xfs_buf_t *bp;
struct xfs_log_item_desc *lidp;
int i;

if (!cur)
return(NULL);

bp = NULL;
for(i = 0; i < XFS_BTREE_MAXLEVELS; i++) {
bp = cur->bc_bufs[i];
if (!bp) break;
if (XFS_BUF_ADDR(bp) == bno)
break; /* Found it */
return NULL;

for (i = 0; i < XFS_BTREE_MAXLEVELS; i++) {
if (!cur->bc_bufs[i])
break;
if (XFS_BUF_ADDR(cur->bc_bufs[i]) == bno)
return cur->bc_bufs[i];
}
if (i == XFS_BTREE_MAXLEVELS)
bp = NULL;

if (!bp) { /* Chase down all the log items to see if the bp is there */
struct xfs_log_item_desc *lidp;
/* Chase down all the log items to see if the bp is there */
list_for_each_entry(lidp, &cur->bc_tp->t_items, lid_trans) {
struct xfs_buf_log_item *bip;

list_for_each_entry(lidp, &cur->bc_tp->t_items, lid_trans) {
bip = (struct xfs_buf_log_item *)lidp->lid_item;
if (bip->bli_item.li_type == XFS_LI_BUF &&
XFS_BUF_ADDR(bip->bli_buf) == bno)
return bip->bli_buf;
}
bip = (struct xfs_buf_log_item *)lidp->lid_item;
if (bip->bli_item.li_type == XFS_LI_BUF &&
XFS_BUF_ADDR(bip->bli_buf) == bno)
return bip->bli_buf;
}

return bp;
return NULL;
}

STATIC void
Expand Down

0 comments on commit ecd7f08

Please sign in to comment.