[Intel-xe] [PATCH v3 5/9] drm/xe/wa: Track gt/engine/lrc active workarounds

Lucas De Marchi lucas.demarchi at intel.com
Thu May 25 05:11:37 UTC 2023


On Wed, May 17, 2023 at 01:23:19PM -0700, Lucas De Marchi wrote:
>On Wed, May 17, 2023 at 10:50:56AM -0700, Matt Roper wrote:
>>On Tue, May 16, 2023 at 03:19:46PM -0700, Lucas De Marchi wrote:
>>>Allocate the data to track workarounds on the device, and pass that to
>>>RTP so the active workarounds are enabled. For later reporting purposes,
>>>there's no need to differentiate the engine or gt in which the
>>>workaround got enabled, so just use a per-device bitmap.
>>
>>Going forward are we going to want to track these on a per-device or a
>>per-GT basis?  The workaround database has switched to associating
>>workarounds with the IP block rather than the platform since sometimes
>>they're needed by both the graphics and media IP, other times they're
>>only needed on one.
>>
>>For example, consider a couple different MTL workarounds:
>>* Wa_14018575942 -- applies to both graphics and media GT
>>* Wa_14015795083 -- applies to graphics GT but not media
>>* Wa_14016790560 -- applies to media GT but not graphics
>>
>>As we get more post-MTL platforms where these chips may get mixed and
>>matched into other platforms, I think it will be important to recognize
>>not only whether the workaround is active somewhere on the platform, but
>>exactly which GT(s) it's active on.
>
>My idea was that for tracking purposes the device-level is sufficient as
>I understand this would be more useful for knowing "is WA X
>implemented and active?" rather than if the action it takes, applying
>only to media or graphics GT, is correct. For the latter, we should
>really be checking the register-save-restore in debugfs to know if the
>bits are being applied correctly where they need to be applied
>(and for OOB workarounds  to check whatever the thing the code is doing
>in that code path)
>
>
>I may be wrong here though... need to think a little bit more or more
>time to be convinced otherwise. The change would be relatively easy, so
>may be worth doing:
>
>1) allocate bitmap per gt/engine besides the global device one
>2) run the rules together with the gt creation
>3) when reporting in debugfs optionally apply a bitmap_or() for the
>   summary view, producing the same result we have today in addition to
>   the drill down

on v4 I'm moving the WAs to be tracked per GT as per above.

Lucas De Marchi


More information about the Intel-xe mailing list