mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
drm/imagination: Skip check on paired job fence during job submission
While submitting a paired fragment job, there is no need to manually look for, and skip, the paired job fence, as the existing logic to resolve dependencies to pvr_queue_fence objects will have failed to resolve it already and continued with the next one. Point this out where the fence is actually accessed and drop the related check. Signed-off-by: Alessio Belle <alessio.belle@imgtec.com> Reviewed-by: Brajesh Gupta <brajesh.gupta@imgtec.com> Link: https://patch.msgid.link/20260330-job-submission-fixes-cleanup-v1-3-7de8c09cef8c@imgtec.com Signed-off-by: Matt Coster <matt.coster@imgtec.com>
This commit is contained in:
parent
4baf9e70cb
commit
18998b3cb7
|
|
@ -646,10 +646,6 @@ static void pvr_queue_submit_job_to_cccb(struct pvr_job *job)
|
|||
if (!jfence)
|
||||
continue;
|
||||
|
||||
/* This fence will be placed last, as partial render fence. */
|
||||
if (is_paired_job_fence(fence, job))
|
||||
continue;
|
||||
|
||||
if (dma_fence_is_signaled(&jfence->base))
|
||||
continue;
|
||||
|
||||
|
|
@ -664,8 +660,13 @@ static void pvr_queue_submit_job_to_cccb(struct pvr_job *job)
|
|||
}
|
||||
}
|
||||
|
||||
/* Partial render fence goes last. */
|
||||
if (job->type == DRM_PVR_JOB_TYPE_FRAGMENT && job->paired_job) {
|
||||
/*
|
||||
* The loop above will only process dependencies backed by a UFO i.e. with
|
||||
* a valid parent fence assigned, but the paired job dependency won't have
|
||||
* one until both jobs have been submitted. Access the parent fence directly
|
||||
* here instead, submitting it last as partial render fence.
|
||||
*/
|
||||
jfence = to_pvr_queue_job_fence(job->paired_job->done_fence);
|
||||
if (!WARN_ON(!jfence)) {
|
||||
pvr_fw_object_get_fw_addr(jfence->queue->timeline_ufo.fw_obj,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user