|
@@ -1228,6 +1228,10 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ ret = i915_switch_context(ring, file, ctx_id);
|
|
|
+ if (ret)
|
|
|
+ goto err;
|
|
|
+
|
|
|
if (ring == &dev_priv->ring[RCS] &&
|
|
|
mode != dev_priv->relative_constants_mode) {
|
|
|
ret = intel_ring_begin(ring, 4);
|
|
@@ -1249,10 +1253,6 @@ i915_gem_do_execbuffer(struct drm_device *dev, void *data,
|
|
|
goto err;
|
|
|
}
|
|
|
|
|
|
- ret = i915_switch_context(ring, file, ctx_id);
|
|
|
- if (ret)
|
|
|
- goto err;
|
|
|
-
|
|
|
trace_i915_gem_ring_dispatch(ring, seqno);
|
|
|
|
|
|
exec_start = batch_obj->gtt_offset + args->batch_start_offset;
|