[PATCH v1 1/1] drm/xe/guc: Do not assert CTB state while sending MMIO

Matthew Brost matthew.brost at intel.com
Fri Nov 8 03:04:45 UTC 2024


On Thu, Nov 07, 2024 at 05:56:09PM +0100, Michal Wajdeczko wrote:
> 
> 
> On 07.11.2024 16:13, Tomasz Lis wrote:
> > During VF post-migration recovery, MMIO communication channel to GuC
> > is used, despite CTB channel being enabled. This behavior is rooted
> > in the save-restore architecture specification.
> > 
> > Therefore, a VF driver cannot assert that CTB is disabled while sending
> > MMIO messages to GuC. Such assertion needs to be PF only, or be removed.
> 
> + Matt
> 

IIRC there was a big arch push to avoid using MMIO communication
entirely but that was several years ago and lost track of GuC interface
specifics since then.

> > 
> > This patch simply removes the assertion.
> > 
> > Signed-off-by: Tomasz Lis <tomasz.lis at intel.com>
> > Suggested-by: Michał Wajdeczko <michal.wajdeczko at intel.com>
> 
> in fact I was already trying to fix that [1], but I had to wait until we
> have some S/R code in place, so I'm fine with it as-is
> 
> Reviewed-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
> 

I'll defer to Michal here as I'm sure you are more well versed expected
GuC interaction at this point that me.

Matt

> [1] https://patchwork.freedesktop.org/series/128721/#rev1
> 
> > ---
> >  drivers/gpu/drm/xe/xe_guc.c | 1 -
> >  1 file changed, 1 deletion(-)
> > 
> > diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
> > index 7224593c9ce9..df1ba94cf4ca 100644
> > --- a/drivers/gpu/drm/xe/xe_guc.c
> > +++ b/drivers/gpu/drm/xe/xe_guc.c
> > @@ -945,7 +945,6 @@ int xe_guc_mmio_send_recv(struct xe_guc *guc, const u32 *request,
> >  
> >  	BUILD_BUG_ON(VF_SW_FLAG_COUNT != MED_VF_SW_FLAG_COUNT);
> >  
> > -	xe_assert(xe, !xe_guc_ct_enabled(&guc->ct));
> >  	xe_assert(xe, len);
> >  	xe_assert(xe, len <= VF_SW_FLAG_COUNT);
> >  	xe_assert(xe, len <= MED_VF_SW_FLAG_COUNT);
> 


More information about the Intel-xe mailing list