Commit ecd7f082 authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Alex Elder

xfs: clean up xfs_bmap_get_bp

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarDave Chinner <dchinner@redhat.com>
Signed-off-by: default avatarDave Chinner <david@fromorbit.com>
parent 5d18898b
......@@ -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
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment