Lines Matching refs:buip

41 	struct xfs_bui_log_item	*buip)  in xfs_bui_item_free()  argument
43 kmem_free(buip->bui_item.li_lv_shadow); in xfs_bui_item_free()
44 kmem_cache_free(xfs_bui_cache, buip); in xfs_bui_item_free()
56 struct xfs_bui_log_item *buip) in xfs_bui_release() argument
58 ASSERT(atomic_read(&buip->bui_refcount) > 0); in xfs_bui_release()
59 if (!atomic_dec_and_test(&buip->bui_refcount)) in xfs_bui_release()
62 xfs_trans_ail_delete(&buip->bui_item, 0); in xfs_bui_release()
63 xfs_bui_item_free(buip); in xfs_bui_release()
73 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_size() local
76 *nbytes += xfs_bui_log_format_sizeof(buip->bui_format.bui_nextents); in xfs_bui_item_size()
91 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_format() local
94 ASSERT(atomic_read(&buip->bui_next_extent) == in xfs_bui_item_format()
95 buip->bui_format.bui_nextents); in xfs_bui_item_format()
97 buip->bui_format.bui_type = XFS_LI_BUI; in xfs_bui_item_format()
98 buip->bui_format.bui_size = 1; in xfs_bui_item_format()
100 xlog_copy_iovec(lv, &vecp, XLOG_REG_TYPE_BUI_FORMAT, &buip->bui_format, in xfs_bui_item_format()
101 xfs_bui_log_format_sizeof(buip->bui_format.bui_nextents)); in xfs_bui_item_format()
117 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_unpin() local
119 xfs_bui_release(buip); in xfs_bui_item_unpin()
142 struct xfs_bui_log_item *buip; in xfs_bui_init() local
144 buip = kmem_cache_zalloc(xfs_bui_cache, GFP_KERNEL | __GFP_NOFAIL); in xfs_bui_init()
146 xfs_log_item_init(mp, &buip->bui_item, XFS_LI_BUI, &xfs_bui_item_ops); in xfs_bui_init()
147 buip->bui_format.bui_nextents = XFS_BUI_MAX_FAST_EXTENTS; in xfs_bui_init()
148 buip->bui_format.bui_id = (uintptr_t)(void *)buip; in xfs_bui_init()
149 atomic_set(&buip->bui_next_extent, 0); in xfs_bui_init()
150 atomic_set(&buip->bui_refcount, 2); in xfs_bui_init()
152 return buip; in xfs_bui_init()
227 struct xfs_bui_log_item *buip) in xfs_trans_get_bud() argument
234 budp->bud_buip = buip; in xfs_trans_get_bud()
235 budp->bud_format.bud_bui_id = buip->bui_format.bui_id; in xfs_trans_get_bud()
311 struct xfs_bui_log_item *buip, in xfs_bmap_update_log_item() argument
318 set_bit(XFS_LI_DIRTY, &buip->bui_item.li_flags); in xfs_bmap_update_log_item()
325 next_extent = atomic_inc_return(&buip->bui_next_extent) - 1; in xfs_bmap_update_log_item()
326 ASSERT(next_extent < buip->bui_format.bui_nextents); in xfs_bmap_update_log_item()
327 map = &buip->bui_format.bui_extents[next_extent]; in xfs_bmap_update_log_item()
344 struct xfs_bui_log_item *buip = xfs_bui_init(mp); in xfs_bmap_update_create_intent() local
349 xfs_trans_add_item(tp, &buip->bui_item); in xfs_bmap_update_create_intent()
353 xfs_bmap_update_log_item(tp, buip, bi); in xfs_bmap_update_create_intent()
354 return &buip->bui_item; in xfs_bmap_update_create_intent()
453 struct xfs_bui_log_item *buip) in xfs_bui_validate() argument
458 if (buip->bui_format.bui_nextents != XFS_BUI_MAX_FAST_EXTENTS) in xfs_bui_validate()
461 map = &buip->bui_format.bui_extents[0]; in xfs_bui_validate()
495 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_recover() local
504 if (!xfs_bui_validate(mp, buip)) { in xfs_bui_item_recover()
506 &buip->bui_format, sizeof(buip->bui_format)); in xfs_bui_item_recover()
510 map = &buip->bui_format.bui_extents[0]; in xfs_bui_item_recover()
526 budp = xfs_trans_get_bud(tp, buip); in xfs_bui_item_recover()
600 struct xfs_bui_log_item *buip; in xfs_bui_item_relog() local
611 buip = xfs_bui_init(tp->t_mountp); in xfs_bui_item_relog()
612 memcpy(buip->bui_format.bui_extents, map, count * sizeof(*map)); in xfs_bui_item_relog()
613 atomic_set(&buip->bui_next_extent, count); in xfs_bui_item_relog()
614 xfs_trans_add_item(tp, &buip->bui_item); in xfs_bui_item_relog()
615 set_bit(XFS_LI_DIRTY, &buip->bui_item.li_flags); in xfs_bui_item_relog()
616 return &buip->bui_item; in xfs_bui_item_relog()
659 struct xfs_bui_log_item *buip; in xlog_recover_bui_commit_pass2() local
684 buip = xfs_bui_init(mp); in xlog_recover_bui_commit_pass2()
685 xfs_bui_copy_format(&buip->bui_format, bui_formatp); in xlog_recover_bui_commit_pass2()
686 atomic_set(&buip->bui_next_extent, bui_formatp->bui_nextents); in xlog_recover_bui_commit_pass2()
688 xlog_recover_intent_item(log, &buip->bui_item, lsn, in xlog_recover_bui_commit_pass2()