Tiny Core Linux
Tiny Core Extensions => TCE Q&A Forum => Topic started by: wdef on October 17, 2009, 04:41:49 AM
-
tc@box:~$ glxinfo
name of display: :0.0
Failed to initialize TTM buffer manager. Falling back to classic.
[intel_init_bufmgr:500] Error initializing buffer manager.
X Error of failed request: BadAlloc (insufficient resources for operation)
Major opcode of failed request: 151 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Serial number of failed request: 26
Current serial number in output stream: 29
Same message from glxgears which also crashes. xorg log does show dri loaded and no serious errors. I've been googling on this for some time.
One source says the TTM buffer manager requires Legacy3D to be get turned on in xorg, however enabling this is xorg.conf with Option "Legacy3D" "true" makes no difference - xorg's log says it is not turned on.
It seems until very recently it turned on by default anyway with Intel 915GM (only with i915 drm versions < 1.7.0 )
( http://blog.csdn.net/givemeliu/archive/2008/11/07/3249848.aspx ) but Legacy3D has been dropped altogether since March 2009: http://lists.freedesktop.org/archives/intel-gfx/2009-March/001666.html
Apparently, Legacy3D isn't supposed to be needed.
Interestingly, uxa works but does not fix this bug.
A post on an Ubuntu bug report suggested an update to libmesa libraries had broken this but these are not in tc of course. EDIT: is there a mesa extension available with these libraries?
Maybe I should try a git build of xorg? Anyone else come across this issue or have any info?
-
I get that same error on my eeepc900. Don't know why or how to fix it though. :-\
-
I seem to recall this worked with tc-1.x, so maybe something to do with the i915, drm, etc kernel modules in tc-2.x?
It doesn't work for me either with an intel945GM
-
I think I may have figured it out. Juanito was on the right track.
TTM has been removed in the intel xorg driver, GEM is replacing it, but needs support in the kernel (it should be in 2.6.28). So you fall back to classic.
http://bbs.archlinux.org/viewtopic.php?pid=457179
All this new code has been delayed for a long time, because there was a competing memory manager, called TTM, which was almost merged in the kernel in 2.6.24 or so, until the Intel people came up with the first versions of the GEM memory manager. People decided it was better than TTM, and it was considered necessary to delay the merge to stabilize GEM and rewrite the other features to work with GEM, not TTM. Hence, this first version of GEM works only with the i915 driver, and support on the X.org side is implemented only in the version 2.5.0 of the driver. Preliminary GEM support for other drivers is already in development and will be merged in future releases.
http://kernelnewbies.org/Linux_2_6_28#head-b957b19f6139b6bbbfabaf790bf643b1746985d6
So TTM has been switched off, GEM replaces it with i915 and kernels >= 2.6.28 but requires i915 version >= 2.5.0.
And what version of i915 is in Xorg-7.4, the last stable release of Xorg? xf86-video-intel 2.4.2 which is too old. So it looks like Xorg and the kernel folk are out of sync and have left Intel 915GM chipset owners high and dry.
So it looks like those of us with 915GM and the current tc kernel need an updated Intel driver either from a git build of Xorg containing a newer driver or build the driver standalone from
http://xorg.freedesktop.org/releases/individual/driver/
Or we wind back to an older kernel <2.6.28 (might explain why it worked with the older tc).
I used to have to build dri and i915 for Fedora Core 4 in the bad old days, and here we are having to do it again, no fault of tc's of course.
Anyone want to make an xorg tcz from a recent git checkout?
-
PS: it looks like the plan was to add GEM support for other Intel chipsets in Xorg - they are up to xf86-video-intel version 2.9.0 so it is possible that they have added GEM support for 945GM by now (I haven't checked).
-
My notes say it's xf86-intel-2.7.0, not 2.4.2, in the latest Xorg extension.. Could you confirm from your Xorg.0.log?
-
Indeed. The log says module version = 2.7.0
The version of xf86-video-intel in Xorg 7.4 however is listed here as 2.4.2 http://www.x.org/wiki/Releases/7.4
If so it appears that the version of xf86-video-intel does not represent that of the individual modules. There goes my theory.
Unless of course it is xf86-video-intel >= 2.5.0 that is meant to provide GEM support.
EDIT: seems that is correct. Need xf86-video-intel >= 2.5.0, it's not the module version as stated by kernelnewbies.org
http://lists.freedesktop.org/archives/xorg-announce/2008-October/000677.html
2) support for GEM (if supported by the currently running kernel)
EDIT1: xf86-video-intel 2.5.0 was released about a month after Xorg 7.4 so makes sense.
-
I have updated the extension once or twice after the initial 7.4 release. The update to 1.6 series X server required updated drivers, and I had updated them before as well IIRC.
edit: It might be the only thing that would need updating is Mesa. At the time of the last update, 7.2 was still the stable one, 7.3 was dev and 7.4.1 had some known bugs. Now there are stable 7.4.4 and 7.5.2, and 7.6 as dev.
While it's only a single component, it would also require a recompile of the X server. Other parts should be ok from the extension.
-
Hi
Ok after going out for a few hours and coming back I have some progress.
Curaga and I are both right. It seems it is *both* the xf86-intel driver version and the mesa version that are the problem(s) with glxgears.
I compiled xf86-video-intel-2.5.1, quit X, replaced the intel drivers in Curaga's Xorg and restarted. (2.5.0 would not compile).
Now glxinfo and glxgears do not crash (yay) but still give the "Failed to initialize TTM buffer manager. Falling back to classic." message but no errors. But it runs.
glxgears give a framerate of 60 fps - this is because Intel drivers now tie the frame rate to the screen refresh rate by default with vsync, this is not a benchmark. But it shows 3D and dri are working.
OpenGL version string: 1.4 Mesa 7.2.
Mesa version 7.2 does not support GEM. We need mesa >= 7.3 See the useful http://bugs.gentoo.org/show_bug.cgi?id=237468 which also suggests use 2.6.1 as the minimum intel driver version. GEM support was still wobbly with 2.5.0 and presumably 2.5.1.
We may(?) need care in selecting which driver versions to build. There are suggestions that the most recent Intel drivers only work with the most recent kernel, though I do not know if this is correct. But this might explain why the 2.7.0 Intel driver in the extension does not work for glxgears/glxinfo so I think it is likely, unless mesa 7.2 somehow borks that driver.
So we will need a rebuild of Xorg with updated mesa and possibly the Intel driver version that plays nicely with our kernel.
EDIT: if someone wants to build Xorg with updated mesa I will be happy to experiment with intel driver versions to find the latest one that will work if need be.
-
Wdef, it should not be that hard, see the build script in the Xorg extension sources. It does require time and might need some tweaking due to the newer mesa, and time is something I'm very short of right now.
-
Thanks but I didn't specifically ask you to do it. I've already spent some hours today working out what's wrong with it so I'm not sure I'll be building it either. And I know about the build script, I built it once before years ago on Fedora.
-
Ok. I've built mesa 7.5.2 and its demo glxinfo works without printing the memory manager error.
-
Ok. I've built mesa 7.5.2 and its demo glxinfo works without printing the memory manager error.
could u share with us your packages?