drm/xe: Add child contexts to the GuC context lookup
authorDaniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Thu, 14 Sep 2023 21:48:02 +0000 (14:48 -0700)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 21 Dec 2023 16:41:14 +0000 (11:41 -0500)
commitcb90d469183cc8335d646484d66bd3c3643683cc
treef4a4bff338ebafb7fbda20e7eaf99bde6f84c6c2
parent0d0534750f9d4575abf0da3b41a78e5643e6c8dd
drm/xe: Add child contexts to the GuC context lookup

The CAT_ERROR message from the GuC provides the guc id of the context
that caused the problem, which can be a child context. We therefore
need to be able to match that id to the exec_queue that owns it, which
we do by adding child context to the context lookup.

While at it, fix the error path of the guc id allocation code to
correctly free the ids allocated for parallel queues.

v2: rebase on s/XE_WARN_ON/xe_assert

Link: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/590
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: John Harrison <John.C.Harrison@Intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_guc_submit.c