Lines Matching refs:request
2333 struct drm_i915_gem_request *request; in __i915_add_request() local
2338 request = ring->outstanding_lazy_request; in __i915_add_request()
2339 if (WARN_ON(request == NULL)) in __i915_add_request()
2343 ringbuf = request->ctx->engine[ring->id].ringbuf; in __i915_add_request()
2356 ret = logical_ring_flush_all_caches(ringbuf, request->ctx); in __i915_add_request()
2370 request->postfix = intel_ring_get_tail(ringbuf); in __i915_add_request()
2373 ret = ring->emit_request(ringbuf, request); in __i915_add_request()
2381 request->tail = intel_ring_get_tail(ringbuf); in __i915_add_request()
2384 request->head = request_start; in __i915_add_request()
2392 request->batch_obj = obj; in __i915_add_request()
2398 request->ctx = ring->last_context; in __i915_add_request()
2399 if (request->ctx) in __i915_add_request()
2400 i915_gem_context_reference(request->ctx); in __i915_add_request()
2403 request->emitted_jiffies = jiffies; in __i915_add_request()
2404 ring->last_submitted_seqno = request->seqno; in __i915_add_request()
2405 list_add_tail(&request->list, &ring->request_list); in __i915_add_request()
2406 request->file_priv = NULL; in __i915_add_request()
2412 request->file_priv = file_priv; in __i915_add_request()
2413 list_add_tail(&request->client_list, in __i915_add_request()
2417 request->pid = get_pid(task_pid(current)); in __i915_add_request()
2420 trace_i915_gem_request_add(request); in __i915_add_request()
2435 i915_gem_request_remove_from_client(struct drm_i915_gem_request *request) in i915_gem_request_remove_from_client() argument
2437 struct drm_i915_file_private *file_priv = request->file_priv; in i915_gem_request_remove_from_client()
2443 list_del(&request->client_list); in i915_gem_request_remove_from_client()
2444 request->file_priv = NULL; in i915_gem_request_remove_from_client()
2493 static void i915_gem_free_request(struct drm_i915_gem_request *request) in i915_gem_free_request() argument
2495 list_del(&request->list); in i915_gem_free_request()
2496 i915_gem_request_remove_from_client(request); in i915_gem_free_request()
2498 put_pid(request->pid); in i915_gem_free_request()
2500 i915_gem_request_unreference(request); in i915_gem_free_request()
2526 struct drm_i915_gem_request *request; in i915_gem_find_active_request() local
2528 list_for_each_entry(request, &ring->request_list, list) { in i915_gem_find_active_request()
2529 if (i915_gem_request_completed(request, false)) in i915_gem_find_active_request()
2532 return request; in i915_gem_find_active_request()
2541 struct drm_i915_gem_request *request; in i915_gem_reset_ring_status() local
2544 request = i915_gem_find_active_request(ring); in i915_gem_reset_ring_status()
2546 if (request == NULL) in i915_gem_reset_ring_status()
2551 i915_set_reset_status(dev_priv, request->ctx, ring_hung); in i915_gem_reset_ring_status()
2553 list_for_each_entry_continue(request, &ring->request_list, list) in i915_gem_reset_ring_status()
2554 i915_set_reset_status(dev_priv, request->ctx, false); in i915_gem_reset_ring_status()
2598 struct drm_i915_gem_request *request; in i915_gem_reset_ring_cleanup() local
2600 request = list_first_entry(&ring->request_list, in i915_gem_reset_ring_cleanup()
2604 i915_gem_free_request(request); in i915_gem_reset_ring_cleanup()
2671 struct drm_i915_gem_request *request; in i915_gem_retire_requests_ring() local
2673 request = list_first_entry(&ring->request_list, in i915_gem_retire_requests_ring()
2677 if (!i915_gem_request_completed(request, true)) in i915_gem_retire_requests_ring()
2680 trace_i915_gem_request_retire(request); in i915_gem_retire_requests_ring()
2687 request->ringbuf->last_retired_head = request->postfix; in i915_gem_retire_requests_ring()
2689 i915_gem_free_request(request); in i915_gem_retire_requests_ring()
4045 struct drm_i915_gem_request *request, *target = NULL; in i915_gem_ring_throttle() local
4058 list_for_each_entry(request, &file_priv->mm.request_list, client_list) { in i915_gem_ring_throttle()
4059 if (time_after_eq(request->emitted_jiffies, recent_enough)) in i915_gem_ring_throttle()
4062 target = request; in i915_gem_ring_throttle()
5019 struct drm_i915_gem_request *request; in i915_gem_release() local
5021 request = list_first_entry(&file_priv->mm.request_list, in i915_gem_release()
5024 list_del(&request->client_list); in i915_gem_release()
5025 request->file_priv = NULL; in i915_gem_release()