[PATCH] drm/xe/guc: Check error code when initializing the CT mutex

Belgaumkar, Vinay vinay.belgaumkar at intel.com
Fri Mar 22 17:00:07 UTC 2024


On 3/21/2024 12:55 PM, Daniele Ceraolo Spurio wrote:
> The initialization via drmm_mutex_init can fail, so we need to check the
> return code and escalate the failure.
>
> The mutex initialization has been moved after all the other init steps
> that can't fail, so we're always guaranteed to have those done and don't
> have to check in the cleanup code.
>
> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> ---
>   drivers/gpu/drm/xe/xe_guc_ct.c | 5 ++++-
>   1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_guc_ct.c b/drivers/gpu/drm/xe/xe_guc_ct.c
> index d9fa81900ff5..1d930a8eeeca 100644
> --- a/drivers/gpu/drm/xe/xe_guc_ct.c
> +++ b/drivers/gpu/drm/xe/xe_guc_ct.c
> @@ -145,13 +145,16 @@ int xe_guc_ct_init(struct xe_guc_ct *ct)
>   
>   	xe_assert(xe, !(guc_ct_size() % PAGE_SIZE));
>   
> -	drmm_mutex_init(&xe->drm, &ct->lock);
>   	spin_lock_init(&ct->fast_lock);
>   	xa_init(&ct->fence_lookup);
>   	INIT_WORK(&ct->g2h_worker, g2h_worker_func);
>   	init_waitqueue_head(&ct->wq);
>   	init_waitqueue_head(&ct->g2h_fence_wq);
>   
> +	err = drmm_mutex_init(&xe->drm, &ct->lock);
> +	if (err)
> +		return err;
> +
Reviewed-by: Vinay Belgaumkar <vinay.belgaumkar at intel.com>
>   	primelockdep(ct);
>   
>   	bo = xe_managed_bo_create_pin_map(xe, tile, guc_ct_size(),


More information about the Intel-xe mailing list