Go Back   nV News Forums > Linux Support Forums > NVIDIA Linux

Newegg Daily Deals

Reply
 
Thread Tools
Old 10-30-10, 06:42 PM   #1
Anssi
Mageia packager
 
Join Date: Mar 2005
Location: Tampere, Finland
Posts: 45
Send a message via MSN to Anssi
Default Crash regressions with 260.xx NVIDIA OpenGL library

Hi all!
There are several seemingly related crasher regressions related to using the 260.xx driver version.

First, a simple issue of
Code:
SDL_Init(SDL_INIT_AUDIO);
call segfaulting (backtrace attached) (nothing else needed in main()).

It requires at least the following conditions:
  • the binary has to be linked with libGL (i.e. -lGL in addition to -lSDL)
  • pulseaudio has to installed (tested: 0.9.21) but *not* running (autospawn can be enabled or disabled)
  • SDL has to be built with pulse support (tested: 1.2.14, pulse support in dlopen mode)
  • SDL has to be using the pulse driver (either by having patched the pulse priority above alsa like Mandriva, or using SDL_AUDIODRIVER=pulse)
  • must not be running under gdb
  • must not be running under __GL_SINGLE_THREADED=1
  • must be using NVIDIA GL library from 260.x driver (256.x does not crash)
  • if glibc (tested: 2.11.1, 2.12.1) was built with GCC 4.5.1, testcase needs to also be linked with -lpulse to make the crash happen (when glibc is built with either GCC 4.4.3 or GCC 4.4.5, the testcase crashes even without -lpulse)
  • glibc has to be built with -O2 optimization, which includes -falign-functions (this means that using e.g. "-O1" or "-O2 -fno-align-functions" to build glibc will avoid the crash)

Especially the last several conditions seem quite interesting, but I guess they could be just coincidental.
I've confirmed the issue on Mandriva cooker x86_64 and Mandriva 2010.1 x86_64 systems (plus 2010.1 32bit chroot), and I've gotten reports from others indicating their Mandriva 2010.1 x86_64 and Fedora 32-bit installations are also affected (and here's another Fedora 32-bit affected: http://forum.xbmc.org/showthread.php?t=83924).

The issue is reproducable also in a simple chroot environment (tested: Mandriva 2010.1 64bit and Mandriva 2010.1 32bit) without any NVIDIA hardware / X server, where you only have the NVIDIA GL library installed.
I've also put an affected chroot tarball available: http://onse.fi/files/2010.1-x86_64-N...DLtest.tar.bz2 (279MB)
The test program (as described above, only calling SDL_Init(SDL_INIT_AUDIO)) is in /home/anssi/SDLtest.c, which can simply by compiled with
Code:
gcc -o SDLtest SDLtest.c -lSDL -lGL
gcc -o SDLtest+pulse SDLtest.c -lSDL -lGL -lpulse
The chroot contains glibc 2.11.1 compiled with gcc 4.4.3 and therefore both "SDLtest" and "SDLtest+pulse" variants crash. Note that you have to mount /proc inside the chroot, or the crash will not happen.

There is also a related (260.x only) crash when trying to use VDPAU in xbmc (backtrace attached). I've not debugged this one in detail, but it seems that building glibc with -fno-align-functions will workaround this one as well. However, using __GL_SINGLE_THREADED=1 has no effect, and the crash happens regardless.

Attached is also nvidia-bug-report.log.gz from one of the system experiencing this issue. Kernels tested were 2.6.36 and 2.6.35.4.

Feel free to ask for any additional information.
Attached Files
File Type: txt SDLtest-backtrace.txt (1.8 KB, 83 views)
File Type: txt SDLtest.c.txt (97 Bytes, 81 views)
File Type: txt xbmc-vdpau-backtrace.txt (11.0 KB, 102 views)
File Type: gz nvidia-bug-report.log.gz (67.6 KB, 54 views)
__________________
Anssi Hannula (anssi@mageia.org)
Mageia packager of NVIDIA drivers
XBMC developer

Last edited by Anssi; 11-01-10 at 06:23 PM. Reason: fixed conditions: happens even with pulseaudio autospawn enabled, also needs SDL pulse driver selection
Anssi is offline   Reply With Quote
Old 10-31-10, 03:28 PM   #2
edgan
Registered User
 
Join Date: Jun 2006
Posts: 24
Default Re: Crash regressions with 260.xx NVIDIA OpenGL library

I have also seen issues like this. Please release a new version of the driver that fixes them.
edgan is offline   Reply With Quote
Old 11-01-10, 06:24 PM   #3
Anssi
Mageia packager
 
Join Date: Mar 2005
Location: Tampere, Finland
Posts: 45
Send a message via MSN to Anssi
Default Re: Crash regressions with 260.xx NVIDIA OpenGL library

I noticed that at least this specific issue can be workarounded by "SDL_AUDIODRIVER=alsa". So I added the SDL driver selection to the conditions needed to experience the issue.
__________________
Anssi Hannula (anssi@mageia.org)
Mageia packager of NVIDIA drivers
XBMC developer
Anssi is offline   Reply With Quote
Old 11-01-10, 06:38 PM   #4
Anssi
Mageia packager
 
Join Date: Mar 2005
Location: Tampere, Finland
Posts: 45
Send a message via MSN to Anssi
Default Re: Crash regressions with 260.xx NVIDIA OpenGL library

Attached is a better stacktrace with more debug symbols.
Attached Files
File Type: txt SDLtest-better-backtrace.txt (2.2 KB, 94 views)
__________________
Anssi Hannula (anssi@mageia.org)
Mageia packager of NVIDIA drivers
XBMC developer
Anssi is offline   Reply With Quote
Old 11-12-10, 08:45 AM   #5
Anssi
Mageia packager
 
Join Date: Mar 2005
Location: Tampere, Finland
Posts: 45
Send a message via MSN to Anssi
Default Re: Crash regressions with 260.xx NVIDIA OpenGL library

This seems to be fixed in 260.19.21.
__________________
Anssi Hannula (anssi@mageia.org)
Mageia packager of NVIDIA drivers
XBMC developer
Anssi is offline   Reply With Quote
Reply


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 08:04 AM.


Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.