Bug 37862

Summary: Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Product: Mesa Reporter: Pepi <pe_pi>
Component: Mesa coreAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: sa
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: other   
Whiteboard:
i915 platform: i915 features:

Description Pepi 2011-06-02 11:45:26 UTC
OS: Fedora 15

Trying to play Warzone 2011 (builds: 2.3.7 or 2.3.8) it will not work. I have started the came from the terminal. When I quit the game on the terminal I have text:
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
Mesa 7.11-devel implementation error: _mesa_texstore_null() is called
Please report at bugs.freedesktop.org
AL lib: ALc.c:1818: alcCloseDevice(): deleting 1 Buffer(s)
Comment 1 Sven Arvidsson 2011-06-02 12:32:53 UTC
Using what driver? I've played the game without problems with i965, r300g and r600g.
Comment 2 Pepi 2011-06-03 15:13:50 UTC
(In reply to comment #1)
> Using what driver? I've played the game without problems with i965, r300g and
> r600g.

If I'm in right place:
System Tools - System Settings - Graphics:
Driver: Gallium 0.4 on AMD RV770

My Card itself is ATI HD 4800 series.

If you meant something else, I need better coordinates where to find it :D
Comment 3 Marek Olšák 2011-06-03 15:23:25 UTC
Please try the latest Mesa git (that is at least 6491e9593d5cbc5644eb02593a2f562447efdcbb).
Comment 4 Pepi 2011-06-04 08:43:09 UTC
Thanks Marek,
I downloaded it from:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6491e9593d5cbc5644eb02593a2f562447efdcbb

Extract it. Make it with: "make linux-x86-64".

But then...what? 

On the build folder (lib64) I have the following:
libOpenVG.so -> libOpenVG.so.1
libOpenVG.so.1 -> libOpenVG.so.1.0.0
libOpenVG.so.1.0.0
Comment 5 Marek Olšák 2011-06-04 12:21:06 UTC
Use autogen.sh with --enable-gallium-r600, then type make.

These:

lib/libGL.so*
lib/gallium/r600_dri.so

are the files you should use.
Comment 6 Pepi 2011-06-06 13:35:20 UTC
imake and LLVM was required to get it ready. And after ./autoconfig.sh it asked me to use gmake instead of make. But are these drivers now 32b or 64b?

And where should I put them.....and which of them I should use?
Comment 7 Benjamin Bellec 2011-06-06 13:48:36 UTC
(In reply to comment #6)
> imake and LLVM was required to get it ready. And after ./autoconfig.sh it asked
> me to use gmake instead of make.
make is a shortcut for gmake (the Gnu Make).
Look at "ls -l /usr/bin/gmake"

> But are these drivers now 32b or 64b?
They are as your system is (so 64-bits I guess).


> And where should I put them.....and which of them I should use?
You can install them on your system by doing "make install" (in root) after compilation (ie. make).
If you haven't specify a directory with autogen, they will go in /usr/local/lib.
In this case, you must specify the directory when lauching a command, like that:

$ LD_LIBRARY_PATH="/usr/local/lib" LIBGL_DRIVERS_PATH="/usr/local/lib/dri" glxinfo
for instance.
Comment 8 Pepi 2011-06-10 07:37:58 UTC
Thanks Benjamin,
But I'm not sure did everything went right?:

The command:
# LD_LIBRARY_PATH="/usr/local/lib" LIBGL_DRIVERS_PATH="/usr/local/lib/dri" glxinfo

Gives me:

.
.
.
OpenGL renderer string: Gallium 0.4 on AMD RV770
OpenGL version string: 2.1 Mesa 7.11-devel
OpenGL shading language version string: 1.20
.
.


These are now on the "/usr/local/lib":
libGL.so -> libGL.so.1
libGL.so.1 -> libGL.so.1.2



<Dummy Section>
I just thought these should not be in the lib64, as I'm running 64 bit Fedora.
</Dummy Section>
Comment 9 Benjamin Bellec 2011-06-10 10:57:20 UTC
So try with $ LD_LIBRARY_PATH="/usr/local/lib64" LIBGL_DRIVERS_PATH="/usr/local/lib64/dri" glxinfo

But, anyway, when you execute autogen, you have a summary of what you will compile and install.
Comment 10 Pepi 2011-06-12 00:26:11 UTC
Case solved by:

Install:
libxtc_dxtn

and run the command (or add it into your .bashrc):
export R600_ENABLE_S3TC=1

Thanks to this:
http://www.casey-jones.org/blog/16/
Comment 11 Marek Olšák 2011-06-12 07:30:42 UTC
(In reply to comment #10)
> Case solved by:
> 
> Install:
> libxtc_dxtn
> 
> and run the command (or add it into your .bashrc):
> export R600_ENABLE_S3TC=1
> 
> Thanks to this:
> http://www.casey-jones.org/blog/16/

That is not a fix, it's a workaround. The bug is not fixed.
Comment 12 Sven Arvidsson 2011-06-12 11:12:28 UTC
I tried removing my copy of libtxc_dxtn and running the game, but I still can't reproduce this.
Comment 13 Marek Olšák 2011-06-12 11:52:07 UTC
(In reply to comment #8)
> Thanks Benjamin,
> But I'm not sure did everything went right?:
> 
> The command:
> # LD_LIBRARY_PATH="/usr/local/lib" LIBGL_DRIVERS_PATH="/usr/local/lib/dri"
> glxinfo
> 
> Gives me:
> 
> .
> .
> .
> OpenGL renderer string: Gallium 0.4 on AMD RV770
> OpenGL version string: 2.1 Mesa 7.11-devel

The version string should contain a git commit ID like this:

OpenGL version string: 2.1 Mesa 7.11-devel (git-16e3027)

If the commit ID is missing, you are not running Mesa from git.
Comment 14 Laurent carlier 2013-08-19 13:40:13 UTC
Old and surely fixed some time ago

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.