Bug#440488: Some kind of timing/race condition?

Paul TBBle Hampson Paul.Hampson at Pobox.com
Sat May 10 05:15:43 UTC 2008


Using the patch from Jeremy Lainé above, I noticed that the crash at the
tutorial start was always glGetIntegerv(0xba2) (GL_VIEWPORT).

So I stuck a print before and after each such call in Scene.py and
View.py (there's one in GameEngine.py, but Jeremy's patch doesn't log
that one) and bizarrely, the tutorial happily played for a while.

I think it crashed right after I missed by first note, the second note
in the "easy lick". (I was hitting all the other notes, dunno if I was
supposed to do that)

This time, the crash was glGetDoublev(0xb00) (GL_CURRENT_COLOR).

I'm not sure if this is helpful, but I definitely thought it was odd
that adding the prints fixed it. The latter crash was the third in a
sequence of such calls, but the GL_VIEWPORT crash was not preceded
immediately by a GL_VIEWPORT lookup.

The only other thing I can think of is that I've using the NVidia binary
blob (169.12-1), maybe the people who aren't seeing it are using a
different one that uses the mesa GLX?

I'm going to try rebuilding python-opengl against the nvidia binary
blob in case this is a binary problem of some kind...

Hmm, another data point. If I run fof with python2.4, I don't get the
crash at the start of the tutorial, but I do get the crash on the
song-select screen. With python2.5, the tutorial crash is consistent.

If I run python2.5 under gdb, the tutorial doesn't crash immediately
either, but the song-select screen does.

...

Anyway, just went off and generated some stack traces, which I've
attached.

Both show what appears to be a segfault at the same point in the
nvidia driver's binary blob GL implementation. (Makes sense, they're
both calling glGetIntegerv, and probably both caling it with
GL_VIEWPORT, although I didn't check that in these stacktraces)

The 2.4 backtrace is using a rebuilt with DH_BUILD_DEPS=nostrip
python-ctypes based on a rebuilt libffi5 with the patch from the BTS for
the critical error and the addition of assembly debugging symbols.

In this one, I went straight to the song-select menu

The 2.5 backtrace is with stock sid python2.5 and python2.5-dbg
installed. (Python2.5 builds in its own ctypes extension, and that seems
to not be using the system libffi...)

In this, I went to the tutorial and let the countdown complete.

So my current theory is that it's the NVidia binary blob, unless someone
else with this issue is using a different GLX implementation?

-- 
Paul "TBBle" Hampson, Paul.Hampson at Pobox.com

Shorter .sig for a more eco-friendly paperless office.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-games-devel/attachments/20080510/42a311e8/attachment.pgp 


More information about the Pkg-games-devel mailing list