[PATCH] drm/xe/oa: Disallow OA from being enabled on active exec_queue's

Dixit, Ashutosh ashutosh.dixit at intel.com
Fri Nov 22 17:49:16 UTC 2024


On Thu, 21 Nov 2024 18:38:36 -0800, Dixit, Ashutosh wrote:
>
> Doing what I outlined above (submitting to the user exec queue), or doing
> what you are suggesting (submitting directly to the ring), is not an
> insignificant amount of work. E.g. submitting a MI_LRI command to the ring
> requires allocating the batch buffer in the user/exec_queue VM. And even
> then writing directly to the ring would race with the scheduler potentially
> submitting simultaneously to the same ring (see guc_exec_queue_run_job).

Incidentally, for the above reason, submitting directly to the ring would
need introduction of a new lock in the submission path and therefore will
likely not fly. In Xe, as opposed to i915, everything is submitted to the
scheduler and it is only the scheduler which submits to the ring.

Therefore, if we ever do this, my guess we'd have to submit to the user
exec queue instead, as I was saying. I am not sure if there will still be
locking issues in the kernel allocating its batches from the userspace VM,
but they are likely to be less serious than introducing a new lock in the
submission path.

Ashutosh


More information about the Intel-xe mailing list