[Intel-gfx] [PATCH] drm/i915: Restore relaxed padding (OCL_OOB_SUPPRES_ENABLE) for skl+

Mika Kuoppala mika.kuoppala at linux.intel.com
Wed Sep 4 10:59:52 UTC 2019


Chris Wilson <chris at chris-wilson.co.uk> writes:

> This bit was fliped on for "syncing dependencies between camera and
> graphics". BSpec has no recollection why, and it is causing
> unrecoverable GPU hangs with Vulkan compute workloads.
>
> From BSpec, setting bit5 to 0 enables relaxed padding requiremets for
> buffers, 1D and 2D non-array, non-MSAA, non-mip-mapped linear surfaces;
> and *must* be set to 0h on skl+ to ensure "Out of Bounds" case is
> suppressed.
>
> Reported-by: Jason Ekstrand <jason at jlekstrand.net>
> Suggested-by: Jason Ekstrand <jason at jlekstrand.net>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110998
> Fixes: 8424171e135c ("drm/i915/gen9: h/w w/a: syncing dependencies between camera and graphics")
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Tested-by: denys.kostin at globallogic.com
> Cc: Jason Ekstrand <jason at jlekstrand.net>
> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> Cc: <stable at vger.kernel.org> # v4.1+

The bug and especially #110228 was like a good detective story.
But one step left the reader curious: from the compute shader
reproducer the territory to search for was shrunk to gpgpu
workarounds. Was the rest brute force or how did you end up
with this particular one?

Great that it got nailed! Thanks everyone,

Reviewed-by: Mika Kuoppala <mika.kuoppala at linux.intel.com>

> ---
>  drivers/gpu/drm/i915/gt/intel_workarounds.c | 5 -----
>  1 file changed, 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_workarounds.c b/drivers/gpu/drm/i915/gt/intel_workarounds.c
> index 8639fcccdb42..243d3f77be13 100644
> --- a/drivers/gpu/drm/i915/gt/intel_workarounds.c
> +++ b/drivers/gpu/drm/i915/gt/intel_workarounds.c
> @@ -297,11 +297,6 @@ static void gen9_ctx_workarounds_init(struct intel_engine_cs *engine,
>  			  FLOW_CONTROL_ENABLE |
>  			  PARTIAL_INSTRUCTION_SHOOTDOWN_DISABLE);
>  
> -	/* Syncing dependencies between camera and graphics:skl,bxt,kbl */
> -	if (!IS_COFFEELAKE(i915))
> -		WA_SET_BIT_MASKED(HALF_SLICE_CHICKEN3,
> -				  GEN9_DISABLE_OCL_OOB_SUPPRESS_LOGIC);
> -
>  	/* WaEnableYV12BugFixInHalfSliceChicken7:skl,bxt,kbl,glk,cfl */
>  	/* WaEnableSamplerGPGPUPreemptionSupport:skl,bxt,kbl,cfl */
>  	WA_SET_BIT_MASKED(GEN9_HALF_SLICE_CHICKEN7,
> -- 
> 2.23.0


More information about the Intel-gfx mailing list