struct i915_guc_client *client = guc->execbuf_client;
int b_ret;
- /* We are always called with irqs disabled */
- GEM_BUG_ON(!irqs_disabled());
-
- spin_lock(&client->wq_lock);
- guc_wq_item_append(client, rq);
-
/* WA to flush out the pending GMADR writes to ring buffer. */
if (i915_vma_is_map_and_fenceable(rq->ring->vma))
POSTING_READ_FW(GUC_STATUS);
trace_i915_gem_request_in(rq, 0);
+ /* We are always called with irqs disabled */
+ GEM_BUG_ON(!irqs_disabled());
+
+ spin_lock(&client->wq_lock);
+
+ guc_wq_item_append(client, rq);
b_ret = guc_ring_doorbell(client);
client->submissions[engine_id] += 1;
guc->submissions[engine_id] += 1;
guc->last_seqno[engine_id] = rq->global_seqno;
+
spin_unlock(&client->wq_lock);
}