Announcement

Collapse
No announcement yet.

(R500, radeon, x64) games segfaulting

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • nanonyme
    replied
    Right, so tormod & folks should now go on packaging new versions of ia32-libgl1-mesa-* too?

    Leave a comment:


  • sobkas
    replied
    Originally posted by wirrbeltier View Post
    Hey folks, i'm not sure if this is the right forum to post, but my research has led me to believe that. If it should turn out that this i just forgot to switch on some obscure options, or it is actually the games' bugs, then feel free to move this thread.
    I'm currently running Ubuntu Jaunty with stock kernel (2.6.28-15, x64) and opensource radeon drivers & graphics stack from the xorg-edgers ppa, on a 64-bit system with a Radeon X1600 w/ 256 MB RAM.
    Openarena, compiz and the demos of ballistics and Postal 2 work like a charm, but the game that brought me to the whole thougt of playing on linux is hanging
    When i try to start the demo version of LGP's X2 port, i see the loading screen, then it turns blank, i hear the sounds of LGPs "intro movie", then silence and blank screen for 1-4 seconds, and then the game segfaults with a message like this:
    Code:
    x2-demo 1.4.05, built for i386
    Segmentation Fault: What do you mean mind the asteroid? What astero
    
    This is a BUG, please report it to http://support.linuxgamepublishing.com
    Stack dump:
    {
    	[0xf7f44400]
    	/usr/lib32/libGL.so.1 [0xf73dd9ad]
    	/usr/lib32/libGL.so.1 [0xf73dd5ce]
    	x2_demo [0x80f51b6]
    	x2_demo [0x80b7d87]
    	x2_demo(vfprintf+0x2aed) [0x805195d]
    	x2_demo(vfprintf+0x3830) [0x80526a0]
    	x2_demo [0x81009cf]
    	/lib32/libc.so.6(__libc_start_main+0xe5) [0xf7cb5775]
    	x2_demo(XMapRaised+0x31) [0x804ff91]
    }
    for two times in my hours of random trying, i achieved to see the following loading screen before the segfault. LGPs testtool gives some interesting results, though:
    Code:
     Testing installation... OK, installed at /usr/local/games/testtool
    Base system Test
    ----------------
    Testing architecture of system... 64 bits
    Testing system CPU... 2794MHz
    Testing CPU flags... MMX SSE SSE2 
    Testing system memory... -298MB
    
    Graphics Test
    -------------
    Looking for OpenGL library
    Rejecting /usr/lib/libGL.so.1 - wrong architecture
    Rejecting /usr/lib/libGL.so.1.2 - wrong architecture
    Accepting /usr/lib32/libGL.so.1
      Card detected as DRI R300 Project Mesa DRI R300 (RV530 71C3) 20090101  TCL
      Direct Rendering: No
      Card memory detected as 256MB
      Card antialiasing level 0x
      Card anisotropic level 16x
      Card shader level 2.0
    note the "direct rendering: No", whereas glxinfo returns
    Code:
    wirrbel@Datenschaufel:~$ glxinfo | grep direct
    direct rendering: Yes
    .
    There are many problems that might have same results as your. testtool is 32bit app.

    First of all, /usr/lib32/libGL.so.1 might not seek dri drivers in /usr/lib32/dri but only in /usr/lib/dri.
    You can try to fix it by setting this:
    LIBGL_DRIVERS_PATH=/usr/lib32/dri:/usr/lib/dri
    eg.
    Code:
    LIBGL_DRIVERS_PATH=/usr/lib32/dri:/usr/lib/dri /usr/local/games/testtool
    But 32bit glxinfo might be better.

    I think it might be your problem, but I'm not sure.

    Second, /usr/lib32/dri/r300_dri.so (and/or /usr/lib32/libGL.so.1) might be just to old/incompatible with rest of the system.
    Solution is to install newer one.
    Less likely, as library looks(from testtool output) quiet new, but still possible.

    In debian I have 32bit mesa installed
    Code:
    LANG=C ia32-apt-cache policy ia32-libgl1-mesa-glx
    ia32-libgl1-mesa-glx:
      Installed: 7.5-3~22
      Candidate: 7.5.1-1~22
      Version table:
         7.5.1-1~22 0
            400 http://ftp.pl.debian.org unstable-i386/main Packages
     *** 7.5-3~22 0
            100 /var/lib/dpkg/status
         7.0.3-7~22 0
            400 http://ftp.pl.debian.org testing-i386/main Packages
    
    Now I use mesa from git, but earlier I have used package.
    Snippet from apt-cache:
    Code:
    ia32-apt-cache search mesa libgl ia32
    ia32-libgl1-mesa-dev - A free implementation of the OpenGL API -- GLX development files
    ia32-libgl1-mesa-dri - A free implementation of the OpenGL API -- DRI modules
    ia32-libgl1-mesa-dri-dbg - Debugging symbols for the Mesa DRI modules
    ia32-libgl1-mesa-glx - A free implementation of the OpenGL API -- GLX runtime
    ia32-libgl1-mesa-glx-dbg - Debugging symbols for the Mesa GLX runtime
    (more...)
    Third, radeon.ko doesn't support compat ioctl(no 32bit ioctls for 32bit binaries on 64bit kernel) while KMS is enabled. I have only found It on KMS-enabled kernels(2.6.31) eg. KMS must be running. Like I said only on 2.6.31.

    And many more.

    Easiest way to find source of you problem is to get 32bit version of glxinfo and run it:
    LIBGL_DEBUG=verbose glxinfo 1>/dev/null
    Output should include only debug info.
    You might also want to try LIBGL_DRIVERS_PATH trick.
    Comparing full output of 32bit glxinfo with 64bit one might be also useful.

    Originally posted by wirrbeltier View Post
    the syslogs also show nothing suspicious. Results are the same with stock graphics stack.
    I think i have installed all the necessary libraries for running 32-bit apps on 64-bit systems, as well as all the old libraries required by LGPs installers (the script getlibs was a great help).
    getlibs is not a tool that you want to use.
    I bet Ubuntu have a tool to install 32bit libraries alongside 64bit ones(debian have). Use it.

    Originally posted by wirrbeltier View Post
    My questions now are:
    1. From my limited knowledge, a segfault often points to a memory problem. Could a custom compiled 2.6.31 kernel with enabled GEM/TTM bring help?
    From my personal experience if you want to run 32bit opengl binaries on 64bit kernel, 2.6.31 kernel with GEM/TTM/KMS enabled, is not what you looking for.

    Originally posted by wirrbeltier View Post
    2. Could this segfault be a result of some animosity between 32-bit app and 64-bit system? i have 8 GB RAM installed, so perhaps there lies a source of trouble.
    I don't think so.

    Originally posted by wirrbeltier View Post
    3. Could it be that the drivers' OpenGL implementation (somewhere at OpenGL v. 1.4 IIRC) just not yet fulfils the games' needs?
    With git mesa(maybe 1.5 OpenGL dri1) I was able not only to start game but also fly in ship a bit.
    I didn't tested it more due to lack of time.

    Originally posted by wirrbeltier View Post
    4. Might there be some arcane option in the xorg.conf or elsewhere, for direct rendering, shadowfb or something else? currently my xorg.conf has no customized entries.
    If there is one I don't know about it.

    I assume that you have fully updated X2.

    Leave a comment:


  • tormod
    replied
    Code:
    dpkg-deb -c libgl1-mesa-glx_7.6.0+git20090906.97787317-0ubuntu0tormod~jaunty_amd64.deb | grep GL
    -rw-r--r-- root/root    523048 2009-09-06 01:01 ./usr/lib/libGL.so.1.2
    lrwxrwxrwx root/root         0 2009-09-06 01:01 ./usr/lib/libGL.so.1 -> libGL.so.1.2
    So this is the lib that xorg-edgers ships and which should be used on a 64-bit system. I have no experience with 64 bit and I am not sure what should happen when you run 32-bit apps on them though. Where is the other lib coming from?
    Code:
    dpkg -S /usr/lib32/libGL.so.1
    For your question (1) about the kernel: Why don't you just install the newest Karmic kernel? You can keep the old, and choose between them at boot.

    Leave a comment:


  • bridgman
    replied
    I'm guessing here too, but in the "Graphics Test" portion of your second quote it looks like the "normal" libGL is being skipped in favor of one in lib32. What I'm not sure is if that means you're skipping the nice new (64-bit) mesa you installed from the edgers ppa and picking up an old 32-bit mesa, or if the ppa gave you a 32-bit lib as well and the libGL.so files being skipped are old junk from a previous installation.

    My guess is the first option, ie that this has something to do with 64 vs 32 bit.

    Have you reported it to linuxgamepublishing ?

    Leave a comment:


  • wirrbeltier
    started a topic (R500, radeon, x64) games segfaulting

    (R500, radeon, x64) games segfaulting

    Hey folks, i'm not sure if this is the right forum to post, but my research has led me to believe that. If it should turn out that this i just forgot to switch on some obscure options, or it is actually the games' bugs, then feel free to move this thread.
    I'm currently running Ubuntu Jaunty with stock kernel (2.6.28-15, x64) and opensource radeon drivers & graphics stack from the xorg-edgers ppa, on a 64-bit system with a Radeon X1600 w/ 256 MB RAM.
    Openarena, compiz and the demos of ballistics and Postal 2 work like a charm, but the game that brought me to the whole thougt of playing on linux is hanging
    When i try to start the demo version of LGP's X2 port, i see the loading screen, then it turns blank, i hear the sounds of LGPs "intro movie", then silence and blank screen for 1-4 seconds, and then the game segfaults with a message like this:
    Code:
    x2-demo 1.4.05, built for i386
    Segmentation Fault: What do you mean mind the asteroid? What astero
    
    This is a BUG, please report it to http://support.linuxgamepublishing.com
    Stack dump:
    {
    	[0xf7f44400]
    	/usr/lib32/libGL.so.1 [0xf73dd9ad]
    	/usr/lib32/libGL.so.1 [0xf73dd5ce]
    	x2_demo [0x80f51b6]
    	x2_demo [0x80b7d87]
    	x2_demo(vfprintf+0x2aed) [0x805195d]
    	x2_demo(vfprintf+0x3830) [0x80526a0]
    	x2_demo [0x81009cf]
    	/lib32/libc.so.6(__libc_start_main+0xe5) [0xf7cb5775]
    	x2_demo(XMapRaised+0x31) [0x804ff91]
    }
    for two times in my hours of random trying, i achieved to see the following loading screen before the segfault. LGPs testtool gives some interesting results, though:
    Code:
     Testing installation... OK, installed at /usr/local/games/testtool
    Base system Test
    ----------------
    Testing architecture of system... 64 bits
    Testing system CPU... 2794MHz
    Testing CPU flags... MMX SSE SSE2 
    Testing system memory... -298MB
    
    Graphics Test
    -------------
    Looking for OpenGL library
    Rejecting /usr/lib/libGL.so.1 - wrong architecture
    Rejecting /usr/lib/libGL.so.1.2 - wrong architecture
    Accepting /usr/lib32/libGL.so.1
      Card detected as DRI R300 Project Mesa DRI R300 (RV530 71C3) 20090101  TCL
      Direct Rendering: No
      Card memory detected as 256MB
      Card antialiasing level 0x
      Card anisotropic level 16x
      Card shader level 2.0
    note the "direct rendering: No", whereas glxinfo returns
    Code:
    wirrbel@Datenschaufel:~$ glxinfo | grep direct
    direct rendering: Yes
    .
    the syslogs also show nothing suspicious. Results are the same with stock graphics stack.
    I think i have installed all the necessary libraries for running 32-bit apps on 64-bit systems, as well as all the old libraries required by LGPs installers (the script getlibs was a great help).
    However, the demo runs fine (well, at slideshow-speed, but playable) on my EEE pc 4G, which has its integrated Intel graphic chip, an even older kernel and a 32-bit system.

    My questions now are:
    1. From my limited knowledge, a segfault often points to a memory problem. Could a custom compiled 2.6.31 kernel with enabled GEM/TTM bring help?
    2. Could this segfault be a result of some animosity between 32-bit app and 64-bit system? i have 8 GB RAM installed, so perhaps there lies a source of trouble.
    3. Could it be that the drivers' OpenGL implementation (somewhere at OpenGL v. 1.4 IIRC) just not yet fulfils the games' needs?
    4. Might there be some arcane option in the xorg.conf or elsewhere, for direct rendering, shadowfb or something else? currently my xorg.conf has no customized entries.

    Any hint is appreciated

    wirrbeltier
Working...
X