Lines Matching defs:sync

101 static int check_syncmap_free(struct i915_syncmap **sync)
103 i915_syncmap_free(sync);
104 if (*sync) {
105 pr_err("sync not cleared after free\n");
112 static int dump_syncmap(struct i915_syncmap *sync, int err)
117 return check_syncmap_free(&sync);
123 if (i915_syncmap_print_to_buf(sync, buf, PAGE_SIZE))
129 i915_syncmap_free(&sync);
135 struct i915_syncmap *sync = (void *)~0ul;
142 i915_syncmap_init(&sync);
143 return check_syncmap_free(&sync);
163 static int check_one(struct i915_syncmap **sync, u64 context, u32 seqno)
167 err = i915_syncmap_set(sync, context, seqno);
171 if ((*sync)->height) {
173 context, (*sync)->height, (*sync)->prefix);
177 if ((*sync)->parent) {
183 if (hweight32((*sync)->bitmap) != 1) {
185 (*sync)->bitmap, hweight32((*sync)->bitmap));
189 err = check_seqno((*sync), ilog2((*sync)->bitmap), seqno);
193 if (!i915_syncmap_is_later(sync, context, seqno)) {
206 struct i915_syncmap *sync;
214 i915_syncmap_init(&sync);
220 err = check_syncmap_free(&sync);
225 err = check_one(&sync, context,
235 return dump_syncmap(sync, err);
238 static int check_leaf(struct i915_syncmap **sync, u64 context, u32 seqno)
242 err = i915_syncmap_set(sync, context, seqno);
246 if ((*sync)->height) {
248 context, (*sync)->height, (*sync)->prefix);
252 if (hweight32((*sync)->bitmap) != 1) {
254 context, (*sync)->bitmap, hweight32((*sync)->bitmap));
258 err = check_seqno((*sync), ilog2((*sync)->bitmap), seqno);
262 if (!i915_syncmap_is_later(sync, context, seqno)) {
273 struct i915_syncmap *sync;
277 i915_syncmap_init(&sync);
300 err = check_leaf(&sync, context, 0);
304 join = sync->parent;
321 if (__sync_child(join)[__sync_branch_idx(join, context)] != sync) {
329 return dump_syncmap(sync, err);
334 struct i915_syncmap *sync;
338 i915_syncmap_init(&sync);
348 err = i915_syncmap_set(&sync, context, 0);
352 if (sync->height) {
354 context, order, step, sync->height, sync->prefix);
365 if (!i915_syncmap_is_later(&sync, context, 0)) {
373 if (i915_syncmap_is_later(&sync, context + idx, 0)) {
387 if (!i915_syncmap_is_later(&sync, context, 0)) {
397 return dump_syncmap(sync, err);
404 struct i915_syncmap *sync;
412 i915_syncmap_init(&sync);
417 if (i915_syncmap_is_later(&sync, context, 0)) /* Skip repeats */
421 err = i915_syncmap_set(&sync, context + idx, 0);
425 if (sync->height) {
427 context, sync->height, sync->prefix);
432 if (sync->bitmap != BIT(idx + 1) - 1) {
435 sync->bitmap, hweight32(sync->bitmap),
443 return dump_syncmap(sync, err);
448 struct i915_syncmap *sync;
452 i915_syncmap_init(&sync);
463 err = check_syncmap_free(&sync);
471 err = i915_syncmap_set(&sync, context, 0);
475 if (sync->height) {
478 sync->height, sync->prefix);
484 sync = sync->parent;
485 if (sync->parent) {
486 pr_err("Parent (join) of last leaf was not the sync!\n");
491 if (sync->height != order) {
493 sync->height, order);
498 if (sync->bitmap != BIT(KSYNCMAP) - 1) {
500 sync->bitmap, hweight32(sync->bitmap),
508 struct i915_syncmap *leaf = __sync_child(sync)[idx];
516 if (leaf->parent != sync) {
539 return dump_syncmap(sync, err);
546 struct i915_syncmap *sync;
551 i915_syncmap_init(&sync);
564 err = i915_syncmap_set(&sync, context, 0);
584 if (i915_syncmap_is_later(&sync, context, seqno) != expect) {
591 err = i915_syncmap_set(&sync, context, seqno);
600 return dump_syncmap(sync, err);