[PATCH 2/2] drm/xe: Use q->xef for accessing xe file

Umesh Nerlige Ramappa umesh.nerlige.ramappa at intel.com
Thu Dec 19 20:27:30 UTC 2024


On Tue, Dec 17, 2024 at 09:31:22PM -0800, Lucas De Marchi wrote:
>No need to traverse through the vm object as each exec queue maintains a
>reference to xe_file. Also improve/simplify the comment on why xef is
>checked.
>
>Signed-off-by: Lucas De Marchi <lucas.demarchi at intel.com>

LGTM, 

Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa at intel.com>

Thanks,
Umesh
>---
> drivers/gpu/drm/xe/xe_exec_queue.c | 12 ++++--------
> 1 file changed, 4 insertions(+), 8 deletions(-)
>
>diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
>index 8005530b5e51e..8948f50ee58ff 100644
>--- a/drivers/gpu/drm/xe/xe_exec_queue.c
>+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
>@@ -770,25 +770,21 @@ bool xe_exec_queue_is_idle(struct xe_exec_queue *q)
> void xe_exec_queue_update_run_ticks(struct xe_exec_queue *q)
> {
> 	struct xe_device *xe = gt_to_xe(q->gt);
>-	struct xe_file *xef;
> 	struct xe_lrc *lrc;
> 	u32 old_ts, new_ts;
> 	int idx;
>
> 	/*
>-	 * Jobs that are run during driver load may use an exec_queue, but are
>-	 * not associated with a user xe file, so avoid accumulating busyness
>-	 * for kernel specific work.
>+	 * Jobs that are executed by kernel doesn't have a corresponding xe_file
>+	 * and thus are not accounted.
> 	 */
>-	if (!q->vm || !q->vm->xef)
>+	if (!q->xef)
> 		return;
>
> 	/* Synchronize with unbind while holding the xe file open */
> 	if (!drm_dev_enter(&xe->drm, &idx))
> 		return;
>
>-	xef = q->vm->xef;
>-
> 	/*
> 	 * Only sample the first LRC. For parallel submission, all of them are
> 	 * scheduled together and we compensate that below by multiplying by
>@@ -799,7 +795,7 @@ void xe_exec_queue_update_run_ticks(struct xe_exec_queue *q)
> 	 */
> 	lrc = q->lrc[0];
> 	new_ts = xe_lrc_update_timestamp(lrc, &old_ts);
>-	xef->run_ticks[q->class] += (new_ts - old_ts) * q->width;
>+	q->xef->run_ticks[q->class] += (new_ts - old_ts) * q->width;
>
> 	drm_dev_exit(idx);
> }
>-- 
>2.47.0
>


More information about the Intel-xe mailing list