• Home
  • Raw
  • Download

Lines Matching refs:ww

946 			    struct i915_gem_ww_ctx *ww,  in i915_gem_object_ggtt_pin_ww()  argument
1014 ret = i915_vma_pin_ww(vma, ww, size, alignment, flags | PIN_GLOBAL); in i915_gem_object_ggtt_pin_ww()
1324 void i915_gem_ww_ctx_init(struct i915_gem_ww_ctx *ww, bool intr) in i915_gem_ww_ctx_init() argument
1326 ww_acquire_init(&ww->ctx, &reservation_ww_class); in i915_gem_ww_ctx_init()
1327 INIT_LIST_HEAD(&ww->obj_list); in i915_gem_ww_ctx_init()
1328 ww->intr = intr; in i915_gem_ww_ctx_init()
1329 ww->contended = NULL; in i915_gem_ww_ctx_init()
1332 static void i915_gem_ww_ctx_unlock_all(struct i915_gem_ww_ctx *ww) in i915_gem_ww_ctx_unlock_all() argument
1336 while ((obj = list_first_entry_or_null(&ww->obj_list, struct drm_i915_gem_object, obj_link))) { in i915_gem_ww_ctx_unlock_all()
1348 void i915_gem_ww_ctx_fini(struct i915_gem_ww_ctx *ww) in i915_gem_ww_ctx_fini() argument
1350 i915_gem_ww_ctx_unlock_all(ww); in i915_gem_ww_ctx_fini()
1351 WARN_ON(ww->contended); in i915_gem_ww_ctx_fini()
1352 ww_acquire_fini(&ww->ctx); in i915_gem_ww_ctx_fini()
1355 int __must_check i915_gem_ww_ctx_backoff(struct i915_gem_ww_ctx *ww) in i915_gem_ww_ctx_backoff() argument
1359 if (WARN_ON(!ww->contended)) in i915_gem_ww_ctx_backoff()
1362 i915_gem_ww_ctx_unlock_all(ww); in i915_gem_ww_ctx_backoff()
1363 if (ww->intr) in i915_gem_ww_ctx_backoff()
1364 ret = dma_resv_lock_slow_interruptible(ww->contended->base.resv, &ww->ctx); in i915_gem_ww_ctx_backoff()
1366 dma_resv_lock_slow(ww->contended->base.resv, &ww->ctx); in i915_gem_ww_ctx_backoff()
1369 list_add_tail(&ww->contended->obj_link, &ww->obj_list); in i915_gem_ww_ctx_backoff()
1371 ww->contended = NULL; in i915_gem_ww_ctx_backoff()