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

Jason Ekstrand jason at jlekstrand.net
Fri Aug 23 18:53:50 UTC 2019


Bump?  Has this been landed or looked at beyond my review?

On Wed, Aug 14, 2019 at 1:40 PM Jason Ekstrand <jason at jlekstrand.net> wrote:

> I was going to ask the status of this and then I looked and realized that
> I never provided a commit message blrub.  Oops.  Here you go:
>
> On Broadwell, the sampler was changed to not require extra padding for
> simple (no arrays, mipmapping, or MSAA) 1D, 2D, and buffer surfaces.
> Setting the GEN9_DISABLE_OCL_OOB_SUPPRESS_LOGIC bit in HALF_SLICE_CHICKEN3
> disables this and reverts the hardware to the HSW-era behaviour where the
> sampler over-fetches near the edges of the surface.  While the over-fetch
> does not cause faults due to the scratch page, it still means that more
> data than needed is getting pulled into the sampler cache.  If the
> over-fetch from the sampler on a BUFFER surface leaks over into an atomic
> on the L3$, hangs can occur.
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110228
>
> On Thu, Aug 8, 2019 at 11:35 PM Jason Ekstrand <jason at jlekstrand.net>
> wrote:
>
>> Also, I think we can provide a better commit message. I'll type something
>> in the morning when I can actually look stuff up and provide correct
>> references.
>>
>> On August 8, 2019 12:33:15 Jason Ekstrand <jason at jlekstrand.net> wrote:
>>
>>> Note: This doesn't actually fix 110998.  I can still get a hard-hang
>>> with a slightly different version of the reproducer example.  However, it
>>> does fix the original and I suspect it will fix the UE4 editor hang in
>>> 110228
>>>
>>> On Thu, Aug 8, 2019 at 12:30 PM Jason Ekstrand <jason at jlekstrand.net>
>>> wrote:
>>>
>>>> This is consistent with what the Windows driver does and what I've
>>>> heard from HW people.
>>>>
>>>> Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
>>>>
>>>> On Thu, Aug 8, 2019 at 11:36 AM Chris Wilson <chris at chris-wilson.co.uk>
>>>> wrote:
>>>>
>>>>> 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>
>>>>> Cc: Jason Ekstrand <jason at jlekstrand.net>
>>>>> Cc: Mika Kuoppala <mika.kuoppala at linux.intel.com>
>>>>> Cc: <stable at vger.kernel.org> # v4.1+
>>>>> ---
>>>>>  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 704ace01e7f5..b95c1d59a347 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.rc1
>>>>>
>>>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20190823/8872bbe8/attachment-0001.html>


More information about the Intel-gfx mailing list