Bug 106577 - broken rendering with nine and nouveau (GM107)
Summary: broken rendering with nine and nouveau (GM107)
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/nouveau (show other bugs)
Version: unspecified
Hardware: Other All
: highest normal
Assignee: Nouveau Project
QA Contact: Nouveau Project
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-05-19 12:09 UTC by Roman Elshin
Modified: 2018-12-02 14:12 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Roman Elshin 2018-05-19 12:09:54 UTC
it is regression, but is it nouveau bug?:
# bad: [4d6fab245eec3880e2a59424a579851f44857ce8] cso: don't track the number of sampler states bound
git bisect bad 4d6fab245eec3880e2a59424a579851f44857ce8
# good: [c8459846905bf7adfb6b5010a77aee9269228bdb] st/mesa: sink and simplify texBaseFormat getting for sampler states
git bisect good c8459846905bf7adfb6b5010a77aee9269228bdb
# first bad commit: [4d6fab245eec3880e2a59424a579851f44857ce8] cso: don't track the number of sampler states bound
Comment 1 Ilia Mirkin 2018-05-19 15:04:19 UTC
Yes, it's a known issue.

The gallium API usage was updated in the CSO to be incompatible with how nouveau processes texture/sampler binding. Haven't gotten around to fixing it yet though.

There's no "no regressions" policy, so you end up with a broken driver.
Comment 2 Roman Elshin 2018-05-19 18:14:31 UTC
Thanks for clarifying, it is sad, i was always thinking that such changes are comunity decision.
Comment 3 i.kalvachev 2018-05-28 14:44:05 UTC
Here is a link to the Ixit Nine issue tracker of this bug:
https://github.com/iXit/Mesa-3D/issues/308

It also contains a workaround that you could use if you compile your own Mesa3D.

I must also say I am very disappointed by Nouveau developers who have not fixed this issue for over 3 months after the exact cause has been known and they have been informed.

You might be angry that the API has been changed without telling you, but it is your users that suffer from visual glitches because you can't find the time to adapt your code, or discuss and push another fix.

The software render has already been fixed.
Nouveau is the only buggy driver, at this moment.
Comment 4 Ilia Mirkin 2018-05-28 15:01:36 UTC
(In reply to iive from comment #3)
> I must also say I am very disappointed by Nouveau developers
[...]
> Nouveau is the only buggy driver, at this moment.

Patches welcome.

Apparently thus far no one has the time/concentration necessary to rewrite all the texture/sampler handling in the driver, and, more importantly, ensure that everything still works.

As always, my standard recommendation applies -- DON'T BUY NVIDIA!
Comment 5 i.kalvachev 2018-05-29 16:19:00 UTC
(In reply to Ilia Mirkin from comment #4)
> (In reply to iive from comment #3)
> > I must also say I am very disappointed by Nouveau developers
> [...]
> > Nouveau is the only buggy driver, at this moment.
> 
> Patches welcome.

Can't help with that, no working NVidia hardware around.
Not going to buy one either.
 
> Apparently thus far no one has the time/concentration necessary to rewrite
> all the texture/sampler handling in the driver, and, more importantly,
> ensure that everything still works.

Three months is plenty of time for this kind of bug. Also "rewrite" is too dramatic word for what has to be done, it's more of "refactoring"; and yes indeed it could be tricky.
There is also the possibility of placing a single dirty hack in nouveau driver that is similar to the workaround in the issue tracker.

I think that keeping things private only made things worse. People trusted you that you would fix this, and you let them down.

What is even worse, the tone you are using here, kind of implies that you do not intend to work on a fix.

I hope that you will prove me wrong.
Comment 6 Ilia Mirkin 2018-05-29 16:24:36 UTC
(In reply to iive from comment #5)
> What is even worse, the tone you are using here, kind of implies that you do
> not intend to work on a fix.

I do intend to work on one, but my time is limited, and this sort of thing requires a lot of concentration not to muck up completely. I've been intending since I heard about the issue, so you can see that my intent doesn't mean much.

Sounds like my free-time open-source contributions don't live up to your high standards. Feel free to hire someone to work on this if you're desperate to see it fixed but can't do it yourself, or recruit people to contribute in their free time. In case it's not clear, manpower is lacking.
Comment 7 i.kalvachev 2018-08-21 01:02:28 UTC
(In reply to Ilia Mirkin from comment #6)
> (In reply to iive from comment #5)
> > What is even worse, the tone you are using here, kind of implies that you do
> > not intend to work on a fix.
> 
> I do intend to work on one

Three months have passed since this bug has been open
and nothing has changed.
Comment 8 Roman Elshin 2018-12-02 14:12:13 UTC
Fixed in master by commit:
fc0139d28339f58bcbb4946fea7608ecdaff93e7
nv50,nvc0: Fix gallium nine regression regarding sampler bindings
Thanks a lot!


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.