Lines Matching refs:cb
421 struct i915_sw_dma_fence_cb *cb = container_of(data, typeof(*cb), base);
423 i915_sw_fence_set_error_once(cb->fence, dma->error);
424 i915_sw_fence_complete(cb->fence);
425 kfree(cb);
430 struct i915_sw_dma_fence_cb_timer *cb = from_timer(cb, t, timer);
433 fence = xchg(&cb->base.fence, NULL);
438 cb->dma->ops->get_driver_name(cb->dma),
439 cb->dma->ops->get_timeline_name(cb->dma),
440 cb->dma->seqno,
450 struct i915_sw_dma_fence_cb_timer *cb =
451 container_of(data, typeof(*cb), base.base);
454 fence = xchg(&cb->base.fence, NULL);
460 irq_work_queue(&cb->work);
465 struct i915_sw_dma_fence_cb_timer *cb =
466 container_of(wrk, typeof(*cb), work);
468 timer_shutdown_sync(&cb->timer);
469 dma_fence_put(cb->dma);
471 kfree_rcu(cb, rcu);
479 struct i915_sw_dma_fence_cb *cb;
491 cb = kmalloc(timeout ?
495 if (!cb) {
507 cb->fence = fence;
513 container_of(cb, typeof(*timer), base);
525 ret = dma_fence_add_callback(dma, &cb->base, func);
529 func(dma, &cb->base);
540 struct i915_sw_dma_fence_cb *cb = container_of(data, typeof(*cb), base);
542 i915_sw_fence_set_error_once(cb->fence, dma->error);
543 i915_sw_fence_complete(cb->fence);
548 struct i915_sw_dma_fence_cb *cb)
559 cb->fence = fence;
563 if (dma_fence_add_callback(dma, &cb->base, __dma_i915_sw_fence_wake)) {
565 __dma_i915_sw_fence_wake(dma, &cb->base);