Gradients are broken with glamor when RepeatReflect is set

Jeffrey Smith whydoubt at gmail.com
Tue Jan 23 16:36:41 UTC 2018


On Tue, Jan 23, 2018 at 10:27 AM, Michel Dänzer <michel at daenzer.net> wrote:
> On 2018-01-23 04:26 PM, Chris Wilson wrote:
>> Quoting Jeffrey Smith (2018-01-23 15:15:10)
>>> On Mon, Jan 22, 2018 at 3:01 PM, Chris Wilson <chris at chris-wilson.co.uk> wrote:
>>>> Quoting Adam Jackson (2018-01-22 20:09:52)
>>>>> On Sat, 2017-12-23 at 19:26 +0100, Clemens Eisserer wrote:
>>>>>> Hi there,
>>>>>>
>>>>>> Glamor's gradient acceleration code is broken in case RepeatReflect is
>>>>>> used, please see: https://bugs.freedesktop.org/show_bug.cgi?id=98508
>>>>>> I've filed the bug report over a year ago, but except for a
>>>>>> confirmation from Michel Dänzer nothing happend.
>>>>>>
>>>>>> Unfourntunatly I lack the expertise to fix it myself - however instead
>>>>>> of leaving it broken forever, could we fall back to software for
>>>>>> RepeatReflect.
>>>>>> I guess slow is better than completly broken?
>>>>>
>>>>> Just want to note that this isn't forgotten. I got as far as testing
>>>>> the reproducer with Xephyr and verifying glamor was wrong and fb was
>>>>> right, but don't yet get what the RepeatReflect math is getting wrong.
>>>>> I'll definitely have a fix for 1.20 one way or another, but that may
>>>>> just be forcing a fallback.
>>>>>
>>>>> If anyone wanted to investigate this, I think this is the guilty
>>>>> conditional:
>>>>>
>>>>> https://cgit.freedesktop.org/xorg/xserver/tree/glamor/glamor_gradient.c#n296
>
> It's broken with llvmpipe/softpipe as well. Does it render correctly
> with glamor on i965? If so, maybe it's a Gallium non-driver issue.
>
>
> --
> Earthling Michel Dänzer               |               http://www.amd.com
> Libre software enthusiast             |             Mesa and X developer

I haven't had a chance to do any testing with the testcase code.
Is it possible to get images of the actual vs expected output?
Perhaps attached to the bug report.

Just looking at the testcase code, it appears that a linear gradient
is being used.
But Adam referenced the radial gradient shader template.

-- Jeff


More information about the xorg-devel mailing list