[Mesa-dev] [PATCH 3/3 v2] r600g: get rid of dummy pixel shader

Dave Airlie airlied at gmail.com
Wed Apr 12 19:21:13 UTC 2017


On 13 April 2017 at 03:39, Constantine Kharlamov <Hi-Angel at yandex.ru> wrote:
> On 12.04.2017 18:53, Marek Olšák wrote:
>> On Wed, Apr 12, 2017 at 4:44 PM, Markus Trippelsdorf
>> <markus at trippelsdorf.de> wrote:
>>> On 2017.04.10 at 22:48 +0200, Marek Olšák wrote:
>>>> Pushed the series, thanks!
>>>>
>>>> Marek
>>>>
>>>> On Mon, Apr 10, 2017 at 10:04 PM, Constantine Kharlamov
>>>> <Hi-Angel at yandex.ru> wrote:
>>>>> The idea is taken from radeonsi. The code mostly was already checking for null
>>>>> pixel shader, so little checks had to be added.
>>>>>
>>>>> Interestingly, acc. to testing with GTAⅣ, though binding of null shader happens
>>>>> a lot at the start (then just stops), but draw_vbo() never actually sees null
>>>>> ps.
>>>>>
>>>>> v2: added a check I missed because of a macros using a prefix to choose
>>>>> a shader.
>>>
>>> This commit causes ring 0 stalls on r600:
>>> https://bugs.freedesktop.org/show_bug.cgi?id=100663
>>
>> Thanks, I reverted the commit.
>>
>> Marek
>
> Marek: do you have an idea why does it work for radeonsi though? I have almost no
> experience to graphics, so the only assumption comes to my mind: some r600g-managed
> card-specific behavior.

Blindly porting stuff from radeonsi without understanding the
differences in the hardware and
drivers isn't going to be a great strategy, as you aren't really
learning more than the moving
code around. I suspect this breaks because r600 more often fails to
compile some shaders,
and the hw requires a fragment shader and we use the empty one as a
fallback in that case.

Dave.


More information about the mesa-dev mailing list