diff --git a/.pick_status.json b/.pick_status.json index f72e4a6df11..3e5f314cb39 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -804,7 +804,7 @@ "description": "winsys/amdgpu: same_queue variable should be set if there is only one queue", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "45fa34284fd46a48d99f1f62bbbef0b5c1326fcb", "notes": null diff --git a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.cpp b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.cpp index e75ba3f15f0..922a47e34cd 100644 --- a/src/gallium/winsys/amdgpu/drm/amdgpu_cs.cpp +++ b/src/gallium/winsys/amdgpu/drm/amdgpu_cs.cpp @@ -1658,8 +1658,8 @@ static void amdgpu_cs_submit_ib(void *job, void *gdata, int thread_index) if (prev_fence) { bool same_ctx = queue->last_ctx == acs->ctx; /* userqueue submission mode uses a single queue per process. */ - bool same_queue = aws->info.ip[acs->ip_type].num_queues > 1 && - queue_type != USERQ; + bool same_queue = queue_type == USERQ || aws->info.ip[acs->ip_type].num_queues == 1; + if (!same_ctx || !same_queue) add_seq_no_to_list(aws, &seq_no_dependencies, queue_index, prev_seq_no); }