https://bugs.winehq.org/show_bug.cgi?id=38973
Bug ID: 38973 Summary: Titan Souls Demo (Steam) crashes with Nouveau/Mesa 10.6.1 during linking of shaders Product: Wine Version: 1.7.47 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: focht@gmx.net Distribution: ---
Hello folks,
found during investigation of bug 38972
Just for documentation purpose.
--- snip --- $ pwd /home/focht/wine-games/wineprefix-steam/drive_c/Program Files/Steam
$ WINEDEBUG=+tid,+seh,+relay,+module,+openal32 wine ./steam.exe -applaunch 359950 -no-dwrite -allowdebug -nominidumps -nobreakpad -windowed >>log.txt 2>&1 ... 0052:trace:opengl:glCreateProgram () 0052:trace:opengl:glAttachShader (12, 10) 0052:trace:opengl:glAttachShader (12, 11) 0052:trace:opengl:glLinkProgram (12) 0052:trace:seh:raise_exception code=c0000005 flags=0 addr=0x7d3e2b64 ip=7d3e2b64 tid=0052 0052:trace:seh:raise_exception info[0]=00000000 0052:trace:seh:raise_exception info[1]=0000000c 0052:trace:seh:raise_exception eax=7c8322b4 ebx=7d9a1000 ecx=00000000 edx=7c833764 esi=00000004 edi=00000000 0052:trace:seh:raise_exception ebp=7c832154 esp=0092f4a0 cs=0023 ds=002b ... Unhandled exception: page fault on read access to 0x0000000c in 32-bit code (0x7ce45b64). Register dump: CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b EIP:7ce45b64 ESP:0092f4a0 EBP:7cb5580c EFLAGS:00010297( R- -- I S -A-P-C) EAX:7cb5593c EBX:7d404000 ECX:00000000 EDX:7cb5eafc ESI:00000004 EDI:00000000 ... Backtrace: =>0 0x7ce45b64 in nouveau_dri.so (+0x2aeb64) (0x7cb5580c) 1 0x7ce185da in nouveau_dri.so (+0x2815d9) (0x0092f764) 2 0x7ce159e4 in nouveau_dri.so (+0x27e9e3) (0x00000002) 3 0x7ce15cea in nouveau_dri.so (+0x27ece9) (0x7cb5669c) 4 0x7ce15746 in nouveau_dri.so (+0x27e745) (0x7cb5669c) 5 0x7ce158b3 in nouveau_dri.so (+0x27e8b2) (0x7cb619b8) 6 0x7ce15746 in nouveau_dri.so (+0x27e745) (0x7cb619b8) 7 0x7ce15927 in nouveau_dri.so (+0x27e926) (0x7cb2baa4) 8 0x7ce15746 in nouveau_dri.so (+0x27e745) (0x7cb2baa4) 9 0x7ce46002 in nouveau_dri.so (+0x2af001) (0x7d6de500) 10 0x7ce062e9 in nouveau_dri.so (+0x26f2e8) (0x00000000) 11 0x7ce27355 in nouveau_dri.so (+0x290354) (0x7cb37e38) 12 0x7cd91458 in nouveau_dri.so (+0x1fa457) (0x7cb37d5c) 13 0x7ccbed53 in nouveau_dri.so (+0x127d52) (0x0092f9a0) 14 0x49976c64 shared_dispatch_stub_509+0x23() in libglapi.so.0 (0x0092f9a0) 15 0x7a874762 glLinkProgram+0x7f(program=0xc) [/home/focht/projects/wine/wine.repo/src/dlls/opengl32/opengl_ext.c:6438] in opengl32 (0x0092f9a0) 16 0x006080d9 in titan (+0x2080d8) (0x0092fa50) 0x7ce45b64: cmpl $4,0xc(%edi) --- snip ---
--- snip --- $ glxinfo | grep -i opengl OpenGL vendor string: nouveau OpenGL renderer string: Gallium 0.4 on NVC1 OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.6.1 (git-6ff3ae8) OpenGL core profile shading language version string: 3.30 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL core profile extensions: OpenGL version string: 3.0 Mesa 10.6.1 (git-6ff3ae8) OpenGL shading language version string: 1.30 OpenGL context flags: (none) OpenGL extensions: OpenGL ES profile version string: OpenGL ES 3.0 Mesa 10.6.1 (git-6ff3ae8) OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00 OpenGL ES profile extensions: --- snip ---
'LIBGL_DEBUG=verbose', 'MESA_DEBUG=1' and 'EGL_LOG_LEVEL=debug' don't yield anything useful but debugging the child process does.
Tidbit: 32-bit and 64-bit mesa-debuginfo packages conflict on Fedora.
--- snip --- Error: Transaction check error: file /usr/src/debug/mesa-20150629/src/glsl/nir/nir_opt_algebraic.c from install of mesa-debuginfo-10.6.1-1.20150629.fc22.i686 conflicts with file from package mesa-debuginfo-10.6.1-1.20150629.fc22.x86_64 file /usr/src/debug/mesa-20150629/src/mesa/main/remap_helper.h from install of mesa-debuginfo-10.6.1-1.20150629.fc22.i686 conflicts with file from package mesa-debuginfo-10.6.1-1.20150629.fc22.x86_64 --- snip ---
Holy ... it's 2015 and those things still happen?
Anyway, here it goes:
--- snip --- ... Program received signal SIGSEGV, Segmentation fault. handle_expression (ir=<optimized out>, this=0x92f764) at opt_algebraic.cpp:587 587 ir_expression *abs_expr = add_expr->operands[j]->as_expression();
Wine-gdb> bt #0 handle_expression (ir=<optimized out>, this=0x92f764) at opt_algebraic.cpp:587 #1 (anonymous namespace)::ir_algebraic_visitor::handle_rvalue (this=0x92f764, rvalue=0x7cd1c394) at opt_algebraic.cpp:962 #2 0x7d3b95da in ir_rvalue_base_visitor::rvalue_visit (this=0x92f764, ir=0x7cd1c37c) at ir_rvalue_visitor.cpp:43 #3 0x7d3b69e4 in ir_expression::accept (this=0x7cd1c37c, v=0x92f764) at ir_hv_accept.cpp:155 #4 0x7d3b6cea in ir_assignment::accept (this=0x7cd08f84, v=0x92f764) at ir_hv_accept.cpp:302 #5 0x7d3b6746 in visit_list_elements (v=v@entry=0x92f764, l=l@entry=0x7cd12940, statement_list=statement_list@entry=true) at ir_hv_accept.cpp:55 #6 0x7d3b68b3 in ir_function_signature::accept (this=0x7cd1291c, v=0x92f764) at ir_hv_accept.cpp:115 #7 0x7d3b6746 in visit_list_elements (v=v@entry=0x92f764, l=l@entry=0x7cd1a6d0, statement_list=statement_list@entry=false) at ir_hv_accept.cpp:55 #8 0x7d3b6927 in ir_function::accept (this=0x7cd1a6bc, v=0x92f764) at ir_hv_accept.cpp:127 #9 0x7d3b6746 in visit_list_elements (v=v@entry=0x92f764, l=l@entry=0x7cce960c, statement_list=statement_list@entry=true) at ir_hv_accept.cpp:55 #10 0x7d3e7002 in do_algebraic (instructions=instructions@entry=0x7cce960c, native_integers=native_integers@entry=true, options=options@entry=0x7ca735c8) at opt_algebraic.cpp:981 #11 0x7d3a72e9 in do_common_optimization (ir=0x7cce960c, linked=linked@entry=true, uniform_locations_assigned=uniform_locations_assigned@entry=false, options=options@entry=0x7ca735c8, native_integers=true) at glsl_parser_extras.cpp:1677 #12 0x7d3c8355 in link_shaders (ctx=ctx@entry=0x7ca72df8, prog=prog@entry=0x7ccf3e84) at linker.cpp:2949 #13 0x7d332458 in _mesa_glsl_link_shader (ctx=ctx@entry=0x7ca72df8, prog=prog@entry=0x7ccf3e84) at program/ir_to_mesa.cpp:2960 #14 0x7d25fd53 in link_program (ctx=0x7ca72df8, program=<optimized out>) at main/shaderapi.c:946 #15 0x49976c64 in shared_dispatch_stub_509 (program=12) at shared-glapi/glapi_mapi_tmp.h:19522 #16 0x7a874762 in glLinkProgram (program=12) at /home/focht/projects/wine/wine.repo/src/dlls/opengl32/opengl_ext.c:6438 #17 0x006080d9 in ?? () #18 0x0054819e in ?? () --- snip ---
$ wine --version wine-1.7.47-196-g4e6e9a1
Regards
https://bugs.winehq.org/show_bug.cgi?id=38973
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download Status|NEW |RESOLVED URL| |http://store.steampowered.c | |om/app/359950/ Resolution|--- |UPSTREAM
--- Comment #1 from Anastasius Focht focht@gmx.net --- Hello folks,
resolving 'upstream' here.
Regards
https://bugs.winehq.org/show_bug.cgi?id=38973
Béla Gyebrószki gyebro69@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |gyebro69@gmail.com
--- Comment #2 from Béla Gyebrószki gyebro69@gmail.com --- I can reproduce the crash on NV92 in Mesa 10.6.1, but the problem is not present in current Mesa git HEAD. Assuming it was fixed upstream.
wine-1.7.47-196-g4e6e9a1 Fedora 22 32-bit OpenGL vendor string: nouveau OpenGL renderer string: Gallium 0.4 on NV92 OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.7.0-devel (git-d69da58) OpenGL core profile shading language version string: 3.30 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL core profile extensions: OpenGL version string: 3.0 Mesa 10.7.0-devel (git-d69da58) OpenGL shading language version string: 1.30
https://bugs.winehq.org/show_bug.cgi?id=38973
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #3 from Austin English austinenglish@gmail.com --- (In reply to Béla Gyebrószki from comment #2)
I can reproduce the crash on NV92 in Mesa 10.6.1, but the problem is not present in current Mesa git HEAD. Assuming it was fixed upstream.
wine-1.7.47-196-g4e6e9a1 Fedora 22 32-bit OpenGL vendor string: nouveau OpenGL renderer string: Gallium 0.4 on NV92 OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.7.0-devel (git-d69da58) OpenGL core profile shading language version string: 3.30 OpenGL core profile context flags: (none) OpenGL core profile profile mask: core profile OpenGL core profile extensions: OpenGL version string: 3.0 Mesa 10.7.0-devel (git-d69da58) OpenGL shading language version string: 1.30
Fixed upstream > closing.