Bug 71816

Summary: Sacred: Gold Edition does not work with radeonsi
Product: DRI Reporter: darkbasic <darkbasic>
Component: DRM/RadeonAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED NOTOURBUG QA Contact:
Severity: normal    
Priority: medium    
Version: XOrg git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description darkbasic 2013-11-20 00:03:08 UTC
I just bought Sacred: Gold Edition from Desura, unfortunately it doesn't work: X crashes as soon as I try to start the game.




Here is dmesg:

[31494.143264] desura[6202]: segfault at 7fe20dcc1e70 ip 00007fe21a9afc77 sp 00007fff0f688160 error 4 in libpthread-2.15.so[7fe21a9a5000+17000]




Here is Xorg.log:

[ 31450.061] (EE)
[ 31450.061] (EE) Backtrace:
[ 31450.061] (EE) 0: /usr/bin/X (xorg_backtrace+0x3d) [0x57dfcd]
[ 31450.061] (EE) 1: /usr/bin/X (0x400000+0x181c19) [0x581c19]
[ 31450.061] (EE) 2: /lib64/libpthread.so.0 (0x7f74e1c21000+0x106c0) [0x7f74e1c316c0]
[ 31450.061] (EE) 3: /usr/lib64/libglamor.so.0 (0x7f74df54d000+0x11e81) [0x7f74df55ee81]
[ 31450.061] (EE) 4: /usr/lib64/libglamor.so.0 (0x7f74df54d000+0x12bbd) [0x7f74df55fbbd]
[ 31450.061] (EE) 5: /usr/lib64/libglamor.so.0 (0x7f74df54d000+0x13b13) [0x7f74df560b13]
[ 31450.061] (EE) 6: /usr/lib64/libglamor.so.0 (0x7f74df54d000+0x141e2) [0x7f74df5611e2]
[ 31450.061] (EE) 7: /usr/bin/X (0x400000+0x10be52) [0x50be52]
[ 31450.061] (EE) 8: /usr/bin/X (0x400000+0x10574a) [0x50574a]
[ 31450.061] (EE) 9: /usr/bin/X (0x400000+0x3a71e) [0x43a71e]
[ 31450.061] (EE) 10: /usr/bin/X (0x400000+0x29e9a) [0x429e9a]
[ 31450.061] (EE) 11: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7f74e08bc6d5]
[ 31450.061] (EE) 12: /usr/bin/X (0x400000+0x2a1e1) [0x42a1e1]
[ 31450.061] (EE)
[ 31450.061] (EE) Segmentation fault at address 0x0
[ 31450.061] (EE)
Fatal server error:
[ 31450.061] (EE) Caught signal 11 (Segmentation fault). Server aborting
[ 31450.061] (EE)
[ 31450.061] (EE)
Please consult the The X.Org Foundation support
         at http://wiki.x.org for help.
[ 31450.061] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 31450.061] (EE)
[ 31450.061] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 31450.108] (EE) Server terminated with error (1). Closing log file.




Here is the output of LIBGL_DEBUG=verbose desura >> error.log 2>> error.log:

01:23:42: Deleted stale lock file '/home/niko/.desura/cache/applock'.
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 14: reading configurations from ~/.fonts.conf is deprecated.
libGL: OpenDriver: trying /usr/lib64/dri/tls/radeonsi_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/radeonsi_dri.so
libGL error: dlopen /usr/lib64/dri/radeonsi_dri.so failed (/usr/lib64/dri/radeonsi_dri.so: wrong ELF class: ELFCLASS64)
libGL: OpenDriver: trying /usr/lib32/dri/tls/radeonsi_dri.so
libGL: OpenDriver: trying /usr/lib32/dri/radeonsi_dri.so
libGL error: dlopen /usr/lib32/dri/radeonsi_dri.so failed (/home/niko/.desura/games/sacred-gold/lib/lib1/libz.so.1: version `ZLIB_1.2.0' not found (required by /usr/lib32/llvm/libLLVM-3.4svn.so))
libGL error: unable to load driver: radeonsi_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: radeonsi
libGL: OpenDriver: trying /usr/lib64/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib64/dri/swrast_dri.so
libGL error: dlopen /usr/lib64/dri/swrast_dri.so failed (/usr/lib64/dri/swrast_dri.so: wrong ELF class: ELFCLASS64)
libGL: OpenDriver: trying /usr/lib32/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib32/dri/swrast_dri.so
libGL error: dlopen /usr/lib32/dri/swrast_dri.so failed (/home/niko/.desura/games/sacred-gold/lib/lib1/libz.so.1: version `ZLIB_1.2.3.3' not found (required by /usr/lib32/libpciaccess.so.0))
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast
desura: Fatal IO error 11 (Risorsa temporaneamente non disponibile) on X server :0.
$XDG_CONFIG_HOME not set, falling back to $HOME/.config.$XDG_CACHE_HOME not set, falling back to $HOME/.cache.sacred 1.0.02, built for i386
Segmentation Fault: I dont believe in dragons! oh...

This is a BUG, please report it to http://support.linuxgamepublishing.com
Stack dump:
{
        linux-gate.so.1(__kernel_sigreturn+0) [0xf7751400]
        /usr/lib32/libGL.so.1(+0x3af16) [0xf5f89f16]
        /home/niko/.desura/games/sacred-gold/sacred() [0x862ef6a]
        /home/niko/.desura/games/sacred-gold/sacred() [0x8095877]
        /home/niko/.desura/games/sacred-gold/sacred() [0x809b3d7]
        /home/niko/.desura/games/sacred-gold/sacred() [0x8609f0b]
        /home/niko/.desura/games/sacred-gold/sacred() [0x809acd8]
        /lib32/libc.so.6(__libc_start_main+0xf3) [0xf692b833]
}

Gdk-ERROR **: Fatal IO error 11 (Resource temporarily unavailable) on X server :0.
/usr/share/themes/oxygen-gtk/gtk-2.0/gtkrc:29: error: unexpected identifier `GtkPaned', expected character `}'
/home/niko/.kde4/share/config/gtkrc:10: error: unexpected identifier `gtk-theme-name', expected keyword - e.g. `style'
/usr/share/themes/oxygen-gtk/gtk-2.0/gtkrc:29: error: unexpected identifier `GtkPaned', expected character `}'
/home/niko/.kde4/share/config/gtkrc:10: error: unexpected identifier `gtk-theme-name', expected keyword - e.g. `style'
$XDG_CONFIG_HOME not set, falling back to $HOME/.config.$XDG_CACHE_HOME not set, falling back to $HOME/.cache.$XDG_CONFIG_HOME not set, falling back to $HOME/.config.$XDG_CACHE_HOME not set, falling back to $HOME/.cache.




glxinfo | grep OpenGL:

OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD TAHITI
OpenGL core profile version string: 3.1 (Core Profile) Mesa 10.1.0-devel (git-15d8e05)
OpenGL core profile shading language version string: 1.40
OpenGL core profile context flags: (none)
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 10.1.0-devel (git-15d8e05)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:




glxinfo-x86 | grep OpenGL:

OpenGL vendor string: X.Org
OpenGL renderer string: Gallium 0.4 on AMD TAHITI
OpenGL core profile version string: 3.1 (Core Profile) Mesa 10.1.0-devel (git-15d8e05)
OpenGL core profile shading language version string: 1.40
OpenGL core profile context flags: (none)
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 10.1.0-devel (git-15d8e05)
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:




My distro is Gentoo amd64, my video card is AMD HD 7950. I have kernel 3.13, xorg-server 1.14.4 + DRI loader entrypoint patch and the whole graphic stack from git including LLVM. 32 bit graphic stack is from git too: I'm using Gentoo's multilib. The 32 bit graphic stack works flawlessly because I play lots of Steam games which are 32-bit only, some of them very demanding like Left 4 Dead 2. glxgears-x86 works too.

I have the 32-bit zlib of course:

[ebuild   R    ] sys-libs/zlib-1.2.8-r1  USE="minizip -static-libs" ABI_X86="32 (64) (-x32)" 0 kB

>>> /usr/lib32/pkgconfig/zlib.pc
>>> /usr/lib32/pkgconfig/minizip.pc
>>> /usr/lib32/libz.so
>>> /usr/lib32/libminizip.so.1 -> libminizip.so.1.0.0
>>> /usr/lib32/libminizip.so -> libminizip.so.1.0.0
>>> /usr/lib32/libminizip.so.1.0.0
>>> /lib32/libz.so.1 -> libz.so.1.2.8
>>> /lib32/libz.so.1.2.8


The game works flawlessly with fglrx. This is the second game which does not start at all with radeon: the other one is Worms Reloaded which is a Steam game. Another user reported that Worms Reloaded works flawlessly with r600g, so do I have some strange problem with my 32-bit stack or is this bug peculiar to radeonsi?
Comment 1 Michel Dänzer 2013-11-20 08:58:27 UTC
(In reply to comment #1)
> libGL: OpenDriver: trying /usr/lib32/dri/radeonsi_dri.so
> libGL error: dlopen /usr/lib32/dri/radeonsi_dri.so failed
> (/home/niko/.desura/games/sacred-gold/lib/lib1/libz.so.1: version
> `ZLIB_1.2.0' not found (required by /usr/lib32/llvm/libLLVM-3.4svn.so))
> libGL error: unable to load driver: radeonsi_dri.so

Looks like the game ships its own version of libz.so.1, which doesn't provide something the system version provides and which LLVM expects, so the radeonsi (and swrast) driver fails to load, and libGL falls back to GLX indirect rendering.

Does it work better if you move away /home/niko/.desura/games/sacred-gold/lib/lib1/libz.so.1 ?


We'd need to see a gdb backtrace of the X server crash, but it's probably basically a consequence of indirect rendering, which is undesirable anyway.
Comment 2 darkbasic 2013-11-20 13:26:39 UTC
Program received signal SIGABRT, Aborted.
0x00007fa80bcfacd9 in raise () from /lib64/libc.so.6
(gdb) bt
#0  0x00007fa80bcfacd9 in raise () from /lib64/libc.so.6
#1  0x00007fa80bcfc0d8 in abort () from /lib64/libc.so.6
#2  0x00007fa80bcf3e06 in ?? () from /lib64/libc.so.6
#3  0x00007fa80bcf3eb2 in __assert_fail () from /lib64/libc.so.6
#4  0x00007fa80a97067c in ?? () from /usr/lib64/libglamor.so.0
#5  0x00007fa80a977434 in ?? () from /usr/lib64/libglamor.so.0
#6  0x00007fa80a97854c in ?? () from /usr/lib64/libglamor.so.0
#7  0x00007fa80a978d2e in ?? () from /usr/lib64/libglamor.so.0
#8  0x00007fa80a9798bd in ?? () from /usr/lib64/libglamor.so.0
#9  0x00000000005696cb in ?? ()
#10 0x000000000055c801 in CompositePicture ()
#11 0x000000000055e467 in ?? ()
#12 0x0000000000561b89 in ?? ()
#13 0x0000000000437853 in ?? ()
#14 0x00000000004283dd in _start ()


Uhm... it isn't of much use :(

I compiled with -O0 -g3 and I enabled debug in xorg-server, xf86-video-ati, glamor and mesa. Why do I still lack symbols?
Comment 3 darkbasic 2013-11-20 16:09:11 UTC
>> Does it work better if you move away /home/niko/.desura/games/sacred-gold/lib/lib1/libz.so.1 ?

It did the trick! Unfortunately it's dead slow and there is no audio.
Comment 4 Marek Olšák 2014-01-23 12:12:39 UTC
(In reply to comment #3)
> >> Does it work better if you move away /home/niko/.desura/games/sacred-gold/lib/lib1/libz.so.1 ?
> 
> It did the trick! Unfortunately it's dead slow and there is no audio.

So is this fixed then?
Comment 5 darkbasic 2014-01-25 13:51:25 UTC
It worked but it wasn't playable. I played it with catalyst and I already uninstalled the game so I can't test it anymore.
Comment 6 Marek Olšák 2014-01-25 15:00:26 UTC
We can resolve the performance issues later if they weren't resolved in November/December when I ported the buffer transfer stuff from r600g. From what you said, this looks like a library-clashing bug unrelated to Mesa, so I'm closing this an NOTOURBUG.

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.