Lines Matching refs:rfence
23 struct xe_range_fence *rfence = container_of(cb, typeof(*rfence), cb); in xe_range_fence_signal_notify() local
24 struct xe_range_fence_tree *tree = rfence->tree; in xe_range_fence_signal_notify()
26 llist_add(&rfence->link, &tree->list); in xe_range_fence_signal_notify()
32 struct xe_range_fence *rfence, *next; in __xe_range_fence_tree_cleanup() local
34 llist_for_each_entry_safe(rfence, next, node, link) { in __xe_range_fence_tree_cleanup()
35 xe_range_fence_tree_remove(rfence, &tree->root); in __xe_range_fence_tree_cleanup()
36 dma_fence_put(rfence->fence); in __xe_range_fence_tree_cleanup()
37 kfree(rfence); in __xe_range_fence_tree_cleanup()
55 struct xe_range_fence *rfence, in xe_range_fence_insert() argument
66 rfence->ops = ops; in xe_range_fence_insert()
67 rfence->start = start; in xe_range_fence_insert()
68 rfence->last = last; in xe_range_fence_insert()
69 rfence->tree = tree; in xe_range_fence_insert()
70 rfence->fence = dma_fence_get(fence); in xe_range_fence_insert()
71 err = dma_fence_add_callback(fence, &rfence->cb, in xe_range_fence_insert()
78 xe_range_fence_tree_insert(rfence, &tree->root); in xe_range_fence_insert()
84 ops->free(rfence); in xe_range_fence_insert()
91 struct xe_range_fence *rfence; in xe_range_fence_tree_remove_all() local
94 rfence = xe_range_fence_tree_iter_first(&tree->root, 0, U64_MAX); in xe_range_fence_tree_remove_all()
95 while (rfence) { in xe_range_fence_tree_remove_all()
97 if (dma_fence_remove_callback(rfence->fence, &rfence->cb)) in xe_range_fence_tree_remove_all()
98 llist_add(&rfence->link, &tree->list); in xe_range_fence_tree_remove_all()
99 rfence = xe_range_fence_tree_iter_next(rfence, 0, U64_MAX); in xe_range_fence_tree_remove_all()
149 xe_range_fence_tree_next(struct xe_range_fence *rfence, u64 start, u64 last) in xe_range_fence_tree_next() argument
151 return xe_range_fence_tree_iter_next(rfence, start, last); in xe_range_fence_tree_next()
154 static void xe_range_fence_free(struct xe_range_fence *rfence) in xe_range_fence_free() argument
156 kfree(rfence); in xe_range_fence_free()