Bug 1080492

Summary: GL errors from wine after latest update to Mesa 18 with radeon driver
Product: [openSUSE] openSUSE Tumbleweed Reporter: Connor McL <connormcl>
Component: X.OrgAssignee: E-mail List <xorg-maintainer-bugs>
Status: RESOLVED FIXED QA Contact: E-mail List <xorg-maintainer-bugs>
Severity: Major    
Priority: P5 - None CC: connormcl, msrb
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Connor McL 2018-02-11 21:33:34 UTC
After the latest tumbleweed update with kernel 4.15.1 and the radeon driver, i get a few GL_INVALID_OPERATIONS errors in wine which results in black screen wine window.

The errors are:

0085:err:d3d:wined3d_debug_callback 0x1915b8: "GL_INVALID_OPERATION in glUseProgram(program 7 not linked)".
0085:err:d3d:wined3d_debug_callback 0x1915b8: "GL_INVALID_OPERATION in glUniform(program not linked)".


I am not sure which component is responsible. I have reverted the system, freezed wine and the radeon drivers to a working version and updated again, the error comes up again. So it seem not to be wine, but driver or libGL related.
I will again revert back to working state before update and try again to identify the broken component...
Comment 1 Jiri Slaby 2018-02-13 08:25:47 UTC
You can esaily downgrade the kernel, e.g. from:
https://download.opensuse.org/repositories/home:/tiwai:/kernel:/4.13/standard/x86_64/

and check.
Comment 2 Connor McL 2018-02-13 22:21:28 UTC
I identified the broken component.

It is the update from Mesa 17.3.2-181.1 to 18.0.0-186.1.

Xserver and other OpenGL stuff doesn't seem to be affected, but wine is not running 3D stuff anymore. 

Changed component and title of bug.
Comment 3 Michal Srb 2018-02-14 10:51:56 UTC
So the program is trying to use a shader which was not linked. Since it staretd happening with 18.0.0, first suspect is shader cache. Please try if setting this environmental variable makes any difference:

MESA_EXTENSION_OVERRIDE=-GL_ARB_get_program_binary

Also can you recommend any free Windows program that can be used to reproduce this in wine?
Comment 4 Michal Srb 2018-02-14 12:00:07 UTC
Nevermind, it seems to be this:
https://bugs.winehq.org/show_bug.cgi?id=44437
https://bugs.freedesktop.org/show_bug.cgi?id=104777

It was fixed by 4195eed961ccfe404ae81b9112189fc93a254ded ("glsl/linker: check same name is not used in block and outside"), which we have now backported in X11:XOrg project. It will be released in the next Mesa update.
Comment 5 Swamp Workflow Management 2018-02-14 13:30:42 UTC
This is an autogenerated message for OBS integration:
This bug (1080492) was mentioned in
https://build.opensuse.org/request/show/576589 Factory / Mesa