Lines Matching refs:buip

40 	struct xfs_bui_log_item	*buip)  in xfs_bui_item_free()  argument
42 kmem_free(buip->bui_item.li_lv_shadow); in xfs_bui_item_free()
43 kmem_cache_free(xfs_bui_cache, buip); in xfs_bui_item_free()
55 struct xfs_bui_log_item *buip) in xfs_bui_release() argument
57 ASSERT(atomic_read(&buip->bui_refcount) > 0); in xfs_bui_release()
58 if (!atomic_dec_and_test(&buip->bui_refcount)) in xfs_bui_release()
61 xfs_trans_ail_delete(&buip->bui_item, 0); in xfs_bui_release()
62 xfs_bui_item_free(buip); in xfs_bui_release()
72 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_size() local
75 *nbytes += xfs_bui_log_format_sizeof(buip->bui_format.bui_nextents); in xfs_bui_item_size()
90 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_format() local
93 ASSERT(atomic_read(&buip->bui_next_extent) == in xfs_bui_item_format()
94 buip->bui_format.bui_nextents); in xfs_bui_item_format()
96 buip->bui_format.bui_type = XFS_LI_BUI; in xfs_bui_item_format()
97 buip->bui_format.bui_size = 1; in xfs_bui_item_format()
99 xlog_copy_iovec(lv, &vecp, XLOG_REG_TYPE_BUI_FORMAT, &buip->bui_format, in xfs_bui_item_format()
100 xfs_bui_log_format_sizeof(buip->bui_format.bui_nextents)); in xfs_bui_item_format()
116 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_unpin() local
118 xfs_bui_release(buip); in xfs_bui_item_unpin()
141 struct xfs_bui_log_item *buip; in xfs_bui_init() local
143 buip = kmem_cache_zalloc(xfs_bui_cache, GFP_KERNEL | __GFP_NOFAIL); in xfs_bui_init()
145 xfs_log_item_init(mp, &buip->bui_item, XFS_LI_BUI, &xfs_bui_item_ops); in xfs_bui_init()
146 buip->bui_format.bui_nextents = XFS_BUI_MAX_FAST_EXTENTS; in xfs_bui_init()
147 buip->bui_format.bui_id = (uintptr_t)(void *)buip; in xfs_bui_init()
148 atomic_set(&buip->bui_next_extent, 0); in xfs_bui_init()
149 atomic_set(&buip->bui_refcount, 2); in xfs_bui_init()
151 return buip; in xfs_bui_init()
226 struct xfs_bui_log_item *buip) in xfs_trans_get_bud() argument
233 budp->bud_buip = buip; in xfs_trans_get_bud()
234 budp->bud_format.bud_bui_id = buip->bui_format.bui_id; in xfs_trans_get_bud()
310 struct xfs_bui_log_item *buip, in xfs_bmap_update_log_item() argument
317 set_bit(XFS_LI_DIRTY, &buip->bui_item.li_flags); in xfs_bmap_update_log_item()
324 next_extent = atomic_inc_return(&buip->bui_next_extent) - 1; in xfs_bmap_update_log_item()
325 ASSERT(next_extent < buip->bui_format.bui_nextents); in xfs_bmap_update_log_item()
326 map = &buip->bui_format.bui_extents[next_extent]; in xfs_bmap_update_log_item()
343 struct xfs_bui_log_item *buip = xfs_bui_init(mp); in xfs_bmap_update_create_intent() local
348 xfs_trans_add_item(tp, &buip->bui_item); in xfs_bmap_update_create_intent()
352 xfs_bmap_update_log_item(tp, buip, bi); in xfs_bmap_update_create_intent()
353 return &buip->bui_item; in xfs_bmap_update_create_intent()
420 struct xfs_bui_log_item *buip) in xfs_bui_validate() argument
425 if (buip->bui_format.bui_nextents != XFS_BUI_MAX_FAST_EXTENTS) in xfs_bui_validate()
428 map = &buip->bui_format.bui_extents[0]; in xfs_bui_validate()
460 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_recover() local
469 if (!xfs_bui_validate(mp, buip)) { in xfs_bui_item_recover()
471 &buip->bui_format, sizeof(buip->bui_format)); in xfs_bui_item_recover()
475 map = &buip->bui_format.bui_extents[0]; in xfs_bui_item_recover()
490 budp = xfs_trans_get_bud(tp, buip); in xfs_bui_item_recover()
560 struct xfs_bui_log_item *buip; in xfs_bui_item_relog() local
571 buip = xfs_bui_init(tp->t_mountp); in xfs_bui_item_relog()
572 memcpy(buip->bui_format.bui_extents, map, count * sizeof(*map)); in xfs_bui_item_relog()
573 atomic_set(&buip->bui_next_extent, count); in xfs_bui_item_relog()
574 xfs_trans_add_item(tp, &buip->bui_item); in xfs_bui_item_relog()
575 set_bit(XFS_LI_DIRTY, &buip->bui_item.li_flags); in xfs_bui_item_relog()
576 return &buip->bui_item; in xfs_bui_item_relog()
619 struct xfs_bui_log_item *buip; in xlog_recover_bui_commit_pass2() local
644 buip = xfs_bui_init(mp); in xlog_recover_bui_commit_pass2()
645 xfs_bui_copy_format(&buip->bui_format, bui_formatp); in xlog_recover_bui_commit_pass2()
646 atomic_set(&buip->bui_next_extent, bui_formatp->bui_nextents); in xlog_recover_bui_commit_pass2()
651 xfs_trans_ail_insert(log->l_ailp, &buip->bui_item, lsn); in xlog_recover_bui_commit_pass2()
652 xfs_bui_release(buip); in xlog_recover_bui_commit_pass2()