[PATCH v2] drm/xe/guc: Clear whole g2h_fence during initialization

Matthew Brost matthew.brost at intel.com
Wed Jul 23 18:14:15 UTC 2025


On Wed, Jul 23, 2025 at 07:56:39PM +0200, Michal Wajdeczko wrote:
> The struct g2h_fence must be explicitly initializated using the
> g2h_fence_init() function to avoid trash values in its members,
> but we missed to update this helper function with the new member.
> 
> To fix that and avoid any future mistakes, memset the whole struct
> first, then update remaining non-zero members.
> 
> Fixes: 94de94d24ea8 ("drm/xe/guc: Cancel ongoing H2G requests when stopping CT")
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
> Cc: Matthew Brost <matthew.brost at intel.com>

Reviewed-by: Matthew Brost <matthew.brost at intel.com>

> Cc: Lukasz Laguna <lukasz.laguna at intel.com>
> ---
> v2: use memset right away (Matt)
> ---
>  drivers/gpu/drm/xe/xe_guc_ct.c | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_guc_ct.c b/drivers/gpu/drm/xe/xe_guc_ct.c
> index b6acccfcd351..3f4e6a46ff16 100644
> --- a/drivers/gpu/drm/xe/xe_guc_ct.c
> +++ b/drivers/gpu/drm/xe/xe_guc_ct.c
> @@ -95,12 +95,8 @@ struct g2h_fence {
>  
>  static void g2h_fence_init(struct g2h_fence *g2h_fence, u32 *response_buffer)
>  {
> +	memset(g2h_fence, 0, sizeof(*g2h_fence));
>  	g2h_fence->response_buffer = response_buffer;
> -	g2h_fence->response_data = 0;
> -	g2h_fence->response_len = 0;
> -	g2h_fence->fail = false;
> -	g2h_fence->retry = false;
> -	g2h_fence->done = false;
>  	g2h_fence->seqno = ~0x0;
>  }
>  
> -- 
> 2.47.1
> 


More information about the Intel-xe mailing list