Lines Matching refs:ruip
36 struct xfs_rui_log_item *ruip)
38 if (ruip->rui_format.rui_nextents > XFS_RUI_MAX_FAST_EXTENTS)
39 kmem_free(ruip);
41 kmem_cache_free(xfs_rui_zone, ruip);
53 struct xfs_rui_log_item *ruip)
55 ASSERT(atomic_read(&ruip->rui_refcount) > 0);
56 if (atomic_dec_and_test(&ruip->rui_refcount)) {
57 xfs_trans_ail_delete(&ruip->rui_item, SHUTDOWN_LOG_IO_ERROR);
58 xfs_rui_item_free(ruip);
68 struct xfs_rui_log_item *ruip = RUI_ITEM(lip);
71 *nbytes += xfs_rui_log_format_sizeof(ruip->rui_format.rui_nextents);
86 struct xfs_rui_log_item *ruip = RUI_ITEM(lip);
89 ASSERT(atomic_read(&ruip->rui_next_extent) ==
90 ruip->rui_format.rui_nextents);
92 ruip->rui_format.rui_type = XFS_LI_RUI;
93 ruip->rui_format.rui_size = 1;
95 xlog_copy_iovec(lv, &vecp, XLOG_REG_TYPE_RUI_FORMAT, &ruip->rui_format,
96 xfs_rui_log_format_sizeof(ruip->rui_format.rui_nextents));
112 struct xfs_rui_log_item *ruip = RUI_ITEM(lip);
114 xfs_rui_release(ruip);
138 struct xfs_rui_log_item *ruip;
142 ruip = kmem_zalloc(xfs_rui_log_item_sizeof(nextents), 0);
144 ruip = kmem_cache_zalloc(xfs_rui_zone,
147 xfs_log_item_init(mp, &ruip->rui_item, XFS_LI_RUI, &xfs_rui_item_ops);
148 ruip->rui_format.rui_nextents = nextents;
149 ruip->rui_format.rui_id = (uintptr_t)(void *)ruip;
150 atomic_set(&ruip->rui_next_extent, 0);
151 atomic_set(&ruip->rui_refcount, 2);
153 return ruip;
243 struct xfs_rui_log_item *ruip)
250 rudp->rud_ruip = ruip;
251 rudp->rud_format.rud_rui_id = ruip->rui_format.rui_id;
357 struct xfs_rui_log_item *ruip,
364 set_bit(XFS_LI_DIRTY, &ruip->rui_item.li_flags);
371 next_extent = atomic_inc_return(&ruip->rui_next_extent) - 1;
372 ASSERT(next_extent < ruip->rui_format.rui_nextents);
373 map = &ruip->rui_format.rui_extents[next_extent];
390 struct xfs_rui_log_item *ruip = xfs_rui_init(mp, count);
395 xfs_trans_add_item(tp, &ruip->rui_item);
399 xfs_rmap_update_log_item(tp, ruip, rmap);
400 return &ruip->rui_item;
472 struct xfs_rui_log_item *ruip = RUI_ITEM(lip);
491 for (i = 0; i < ruip->rui_format.rui_nextents; i++) {
492 rmap = &ruip->rui_format.rui_extents[i];
522 rudp = xfs_trans_get_rud(tp, ruip);
524 for (i = 0; i < ruip->rui_format.rui_nextents; i++) {
525 rmap = &ruip->rui_format.rui_extents[i];
593 struct xfs_rui_log_item *ruip;
604 ruip = xfs_rui_init(tp->t_mountp, count);
605 memcpy(ruip->rui_format.rui_extents, extp, count * sizeof(*extp));
606 atomic_set(&ruip->rui_next_extent, count);
607 xfs_trans_add_item(tp, &ruip->rui_item);
608 set_bit(XFS_LI_DIRTY, &ruip->rui_item.li_flags);
609 return &ruip->rui_item;
638 struct xfs_rui_log_item *ruip;
643 ruip = xfs_rui_init(mp, rui_formatp->rui_nextents);
644 error = xfs_rui_copy_format(&item->ri_buf[0], &ruip->rui_format);
646 xfs_rui_item_free(ruip);
649 atomic_set(&ruip->rui_next_extent, rui_formatp->rui_nextents);
654 xfs_trans_ail_insert(log->l_ailp, &ruip->rui_item, lsn);
655 xfs_rui_release(ruip);