Lines Matching refs:buip

41 	struct xfs_bui_log_item	*buip)  in xfs_bui_item_free()  argument
43 kmem_cache_free(xfs_bui_zone, 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()
59 xfs_trans_ail_delete(&buip->bui_item, SHUTDOWN_LOG_IO_ERROR); in xfs_bui_release()
60 xfs_bui_item_free(buip); in xfs_bui_release()
71 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_size() local
74 *nbytes += xfs_bui_log_format_sizeof(buip->bui_format.bui_nextents); in xfs_bui_item_size()
89 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_format() local
92 ASSERT(atomic_read(&buip->bui_next_extent) == in xfs_bui_item_format()
93 buip->bui_format.bui_nextents); in xfs_bui_item_format()
95 buip->bui_format.bui_type = XFS_LI_BUI; in xfs_bui_item_format()
96 buip->bui_format.bui_size = 1; in xfs_bui_item_format()
98 xlog_copy_iovec(lv, &vecp, XLOG_REG_TYPE_BUI_FORMAT, &buip->bui_format, in xfs_bui_item_format()
99 xfs_bui_log_format_sizeof(buip->bui_format.bui_nextents)); in xfs_bui_item_format()
115 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_unpin() local
117 xfs_bui_release(buip); in xfs_bui_item_unpin()
140 struct xfs_bui_log_item *buip; in xfs_bui_init() local
142 buip = kmem_cache_zalloc(xfs_bui_zone, GFP_KERNEL | __GFP_NOFAIL); in xfs_bui_init()
144 xfs_log_item_init(mp, &buip->bui_item, XFS_LI_BUI, &xfs_bui_item_ops); in xfs_bui_init()
145 buip->bui_format.bui_nextents = XFS_BUI_MAX_FAST_EXTENTS; in xfs_bui_init()
146 buip->bui_format.bui_id = (uintptr_t)(void *)buip; in xfs_bui_init()
147 atomic_set(&buip->bui_next_extent, 0); in xfs_bui_init()
148 atomic_set(&buip->bui_refcount, 2); in xfs_bui_init()
150 return buip; in xfs_bui_init()
215 struct xfs_bui_log_item *buip) in xfs_trans_get_bud() argument
222 budp->bud_buip = buip; in xfs_trans_get_bud()
223 budp->bud_format.bud_bui_id = buip->bui_format.bui_id; in xfs_trans_get_bud()
306 struct xfs_bui_log_item *buip, in xfs_bmap_update_log_item() argument
313 set_bit(XFS_LI_DIRTY, &buip->bui_item.li_flags); in xfs_bmap_update_log_item()
320 next_extent = atomic_inc_return(&buip->bui_next_extent) - 1; in xfs_bmap_update_log_item()
321 ASSERT(next_extent < buip->bui_format.bui_nextents); in xfs_bmap_update_log_item()
322 map = &buip->bui_format.bui_extents[next_extent]; in xfs_bmap_update_log_item()
339 struct xfs_bui_log_item *buip = xfs_bui_init(mp); in xfs_bmap_update_create_intent() local
344 xfs_trans_add_item(tp, &buip->bui_item); in xfs_bmap_update_create_intent()
348 xfs_bmap_update_log_item(tp, buip, bmap); in xfs_bmap_update_create_intent()
349 return &buip->bui_item; in xfs_bmap_update_create_intent()
430 struct xfs_bui_log_item *buip = BUI_ITEM(lip); in xfs_bui_item_recover() local
445 if (buip->bui_format.bui_nextents != XFS_BUI_MAX_FAST_EXTENTS) in xfs_bui_item_recover()
452 bmap = &buip->bui_format.bui_extents[0]; in xfs_bui_item_recover()
496 budp = xfs_trans_get_bud(tp, buip); in xfs_bui_item_recover()
552 struct xfs_bui_log_item *buip; in xfs_bui_item_relog() local
563 buip = xfs_bui_init(tp->t_mountp); in xfs_bui_item_relog()
564 memcpy(buip->bui_format.bui_extents, extp, count * sizeof(*extp)); in xfs_bui_item_relog()
565 atomic_set(&buip->bui_next_extent, count); in xfs_bui_item_relog()
566 xfs_trans_add_item(tp, &buip->bui_item); in xfs_bui_item_relog()
567 set_bit(XFS_LI_DIRTY, &buip->bui_item.li_flags); in xfs_bui_item_relog()
568 return &buip->bui_item; in xfs_bui_item_relog()
621 struct xfs_bui_log_item *buip; in xlog_recover_bui_commit_pass2() local
630 buip = xfs_bui_init(mp); in xlog_recover_bui_commit_pass2()
631 error = xfs_bui_copy_format(&item->ri_buf[0], &buip->bui_format); in xlog_recover_bui_commit_pass2()
633 xfs_bui_item_free(buip); in xlog_recover_bui_commit_pass2()
636 atomic_set(&buip->bui_next_extent, bui_formatp->bui_nextents); in xlog_recover_bui_commit_pass2()
641 xfs_trans_ail_insert(log->l_ailp, &buip->bui_item, lsn); in xlog_recover_bui_commit_pass2()
642 xfs_bui_release(buip); in xlog_recover_bui_commit_pass2()