]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/gpu/drm/i915/intel_lrc.c
drm/i915: Add reference count to request structure
[karo-tx-linux.git] / drivers / gpu / drm / i915 / intel_lrc.c
index cc49b8492ee4ce558d2f0bd514a36d3092c4a563..56c275d0a610210462e5cb65c1a310d060eca2bc 100644 (file)
@@ -905,6 +905,8 @@ static int logical_ring_alloc_seqno(struct intel_engine_cs *ring,
                }
        }
 
+       kref_init(&request->ref);
+
        ret = i915_gem_get_seqno(ring->dev, &ring->outstanding_lazy_seqno);
        if (ret) {
                intel_lr_context_unpin(ring, ctx);
@@ -1374,7 +1376,7 @@ void intel_logical_ring_cleanup(struct intel_engine_cs *ring)
 
        intel_logical_ring_stop(ring);
        WARN_ON((I915_READ_MODE(ring) & MODE_IDLE) == 0);
-       ring->preallocated_lazy_request = NULL;
+       i915_gem_request_assign(&ring->preallocated_lazy_request, NULL);
        ring->outstanding_lazy_seqno = 0;
 
        if (ring->cleanup)