This commit is for review readability only.

Function implements the wait for context switch.
---
 drivers/gpu/drm/i915/i915_context.c |   23 +++++++++++++++++++++++
 1 files changed, 23 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_context.c 
b/drivers/gpu/drm/i915/i915_context.c
index babceca..45b5181 100644
--- a/drivers/gpu/drm/i915/i915_context.c
+++ b/drivers/gpu/drm/i915/i915_context.c
@@ -66,6 +66,29 @@ static void context_destroy_id(struct drm_i915_gem_context 
*ctx)
        spin_unlock(&file_priv->context_idr_lock);
 }
 
+static int wait_for_context_switch(struct intel_ring_buffer *ring)
+{
+       struct drm_i915_gem_request *request;
+       int ret;
+
+       request = kzalloc(sizeof(*request), GFP_KERNEL);
+       if (request == NULL) {
+               ret = -ENOMEM;
+               goto out;
+       }
+
+       ret = i915_add_request(ring, NULL, request);
+       if (ret) {
+               kfree(request);
+               goto out;
+       }
+
+       ret = i915_wait_request(ring, request->seqno);
+
+out:
+       return ret;
+}
+
 /*
  * Initialize a context for the given ring.
  * @wait_for_switch: whether or not to wait for the context switch instruction
-- 
1.7.3.4

_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to