[PATCH 1/3] drm/xe/guc: Fix capture of steering registers

Matt Roper matthew.d.roper at intel.com
Thu Apr 17 20:15:07 UTC 2025


On Thu, Apr 17, 2025 at 12:52:12PM -0700, John.C.Harrison at Intel.com wrote:
> From: John Harrison <John.C.Harrison at Intel.com>
> 
> The list of registers to capture on a GPU hang includes some that
> require steering. Unfortunately, the flag to say this was being wiped
> to due a missing OR on the assignment of the next flag field.
> 
> Fix that.
> 
> Fixes: b170d696c1e2 ("drm/xe/guc: Add XE_LP steered register lists")
> Cc: Zhanjun Dong <zhanjun.dong at intel.com>
> Cc: Alan Previn <alan.previn.teres.alexis at intel.com>
> Cc: Matt Roper <matthew.d.roper at intel.com>
> Cc: Lucas De Marchi <lucas.demarchi at intel.com>
> Cc: "Thomas Hellström" <thomas.hellstrom at linux.intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi at intel.com>
> Cc: intel-xe at lists.freedesktop.org
> Signed-off-by: John Harrison <John.C.Harrison at Intel.com>

Reviewed-by: Matt Roper <matthew.d.roper at intel.com>

> ---
>  drivers/gpu/drm/xe/xe_guc_capture.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_guc_capture.c b/drivers/gpu/drm/xe/xe_guc_capture.c
> index f6d523e4c5fe..9095618648bc 100644
> --- a/drivers/gpu/drm/xe/xe_guc_capture.c
> +++ b/drivers/gpu/drm/xe/xe_guc_capture.c
> @@ -359,7 +359,7 @@ static void __fill_ext_reg(struct __guc_mmio_reg_descr *ext,
>  
>  	ext->reg = XE_REG(extlist->reg.__reg.addr);
>  	ext->flags = FIELD_PREP(GUC_REGSET_STEERING_NEEDED, 1);
> -	ext->flags = FIELD_PREP(GUC_REGSET_STEERING_GROUP, slice_id);
> +	ext->flags |= FIELD_PREP(GUC_REGSET_STEERING_GROUP, slice_id);
>  	ext->flags |= FIELD_PREP(GUC_REGSET_STEERING_INSTANCE, subslice_id);
>  	ext->regname = extlist->name;
>  }
> -- 
> 2.49.0
> 

-- 
Matt Roper
Graphics Software Engineer
Linux GPU Platform Enablement
Intel Corporation


More information about the Intel-xe mailing list