Bug 30901

Summary: Heroes of Newerth won't start when mesa is compiled with --enable-gallium-llvm
Product: Mesa Reporter: Pavel Ondračka <pavel.ondracka>
Component: Drivers/Gallium/r300Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED INVALID QA Contact:
Severity: minor    
Priority: medium CC: damien
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
URL: http://dl.heroesofnewerth.com/HoNClient-1.0.14.sh
Whiteboard:
i915 platform: i915 features:

Description Pavel Ondračka 2010-10-15 09:29:22 UTC
I usually configure mesa like this: "--enable-debug --enable-gallium-radeon --with-dri-drivers= --with-state-trackers=dri,glx", with this HoN starts and runs fine with r300g driver. However I was trying llvmpipe with some other apps and I noticed, when I add "--enable-gallium-llvm", HoN won't start with "K2 - Fatal Error: ARB_vertex_buffer_object not available." 
This is quite strange because glxinfo is identical and shows GL_ARB_vertex_buffer_object in both cases (and OpenGL vendor string: X.Org R300 Project, OpenGL renderer string: Gallium 0.4 on RV530, so its not like I was using some other driver). I'm quite sure I didn't messed up anything I even asked at #radeon if I'm doing something wrong. LIBGL_DRIVERS_PATH and LD_LIBRARY_PATH are both pointing to right mesa directories and I did git clean -fdx between builds. 

So far I wasn't able to reproduce this with any other app.

This is with Fedora 14 i686, kernel 2.6.35.6-39.fc14, mesa from git, RV530.
Comment 1 Michel Dänzer 2010-10-22 06:32:42 UTC
(In reply to comment #1)
> [...] when I add "--enable-gallium-llvm", HoN won't start with "K2 -
> Fatal Error: ARB_vertex_buffer_object not available." 
> This is quite strange because glxinfo is identical and shows
> GL_ARB_vertex_buffer_object in both cases (and OpenGL vendor string: X.Org R300
> Project, OpenGL renderer string: Gallium 0.4 on RV530, so its not like I was
> using some other driver).

So either the game is picking up a different libGL.so.1 / r300_dri.so, or the error message is misleading and the problem is due to something not visible in glxinfo. As a starting point, are there any differences in the output of 'glxinfo -l'?
Comment 2 Pavel Ondračka 2010-10-22 08:35:31 UTC
(In reply to comment #1)
> So either the game is picking up a different libGL.so.1 / r300_dri.so, or the
> error message is misleading and the problem is due to something not visible in
> glxinfo. As a starting point, are there any differences in the output of
> 'glxinfo -l'?

The only difference in 'glxinfo -l' output is mesa build time.
Comment 3 Pavel Ondračka 2010-10-22 09:12:09 UTC
Now I found another app which have problems with --enable-gallium-llvm. With Unigine Sanctuary I get this crash. But it works fine when compiled without --enable-gallium-llvm.

X Error of failed request:  BadLength (poly request too large or internal Xlib length error)
  Major opcode of failed request:  117 (X_GetPointerMapping)
  Serial number of failed request:  27
  Current serial number in output stream:  29
Comment 4 Marek Olšák 2010-12-09 19:09:01 UTC
I've been running Mesa with --enable-gallium-llvm all the time and I don't have this issue.
Comment 5 Marek Olšák 2010-12-14 09:42:13 UTC
export LIBGL_DEBUG=verbose

and run HoN. Does it print anything interesting?
Comment 6 Pavel Ondračka 2010-12-15 03:32:30 UTC
with LIBGL_DEBUG=verbose:

libGL: OpenDriver: trying /home/Paulie/mesa/lib/gallium/r300_dri.so
libGL error: dlopen /home/Paulie/mesa/lib/gallium/r300_dri.so failed (/home/Paulie/HoN/libs-x86/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/Paulie/mesa/lib/gallium/r300_dri.so))
libGL error: unable to load driver: r300_dri.so
libGL error: driver pointer missing
libGL: OpenDriver: trying /home/Paulie/mesa/lib/gallium/swrast_dri.so
libGL error: dlopen /home/Paulie/mesa/lib/gallium/swrast_dri.so failed (/home/Paulie/mesa/lib/gallium/swrast_dri.so: sdílený objektový soubor nelze otevřít: Adresář nebo soubor neexistuje)
libGL error: unable to load driver: swrast_dri.so
libGL: OpenDriver: trying /home/Paulie/mesa/lib/gallium/swrastg_dri.so
libGL error: dlopen /home/Paulie/mesa/lib/gallium/swrastg_dri.so failed (/home/Paulie/HoN/libs-x86/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /home/Paulie/mesa/lib/gallium/swrastg_dri.so))
libGL error: unable to load driver: swrastg_dri.so
libGL error: reverting to indirect rendering
K2 - Fatal Error: ARB_vertex_buffer_object not available.
Comment 7 Pavel Ondračka 2010-12-15 03:36:58 UTC
When I remove libstdc++.so.6 bundled with HoN it works fine... so probably not a mesa bug after all.
Comment 8 Damien Grassart 2011-05-26 05:03:02 UTC
*** Bug 37603 has been marked as a duplicate of this bug. ***

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.