Announcement

Collapse
No announcement yet.

Segfaulting X 3.3.6 on Linux

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

  • Segfaulting X 3.3.6 on Linux

    Last weekend I tried to install Xfree86 4.1.0. Bad mistake! Way over my head doing that I decided, I should stick to coding drivers instead...

    So I rebuilt XFree86 3.3.6 (with and without my G400MAX patch). Unfortunately the server always segfaults with (only) certain programs. For example Mozilla dies yet Quake3 works fine! My old build still works.

    Since the old build works I figure that it isn't down to the dynamic libraries(m, dl and c). The other main change I made is a switch to GCC 2.95.2. Basically I was wondering if anyone has successfully built a (stable) XFree86 3.3.6 with this GCC?

    Alternatively if anyone has built a stable XF86_SVGA using my G400MAX patch then please may I have a copy!

    (Not sure if this is a red herring, but I just noticed that all the programs that kill it seem to use pthreads. Does the X server need to be built with the same compiler as this library for some reason? )

  • #2
    Well, haven't used 3.3.6 in over a year (well, except for that first boot when distros insisted on installing it). So sorry, can't help you with a ready-to-use build.

    What distribution are you using? There are quite a few things that matter when compiling, apart from the compiler itself. Check that the kernel headers you used are the same for all compiles. What about glibc? Did you upgrade that?

    By the way, what's wrong with your old build?

    -Rahul
    Porsche: MSI K7N2-L, Athlon XP 2100+, G400 32MB DualHead, 1G RAM, 2xMaxtor 20 GB, Gentoo Linux
    Quicksilver: HP Omnibook 500, PIII 700 MHz, 512MB RAM, 30GB, RedHat Linux 9.

    Comment


    • #3
      My old build is clocking the card incorrectly (G400 speed). There are only a few bytes to change, so I am thinking I will just use a hex editor! Should be fairly easy to find them in the file...

      I'm using debian slink with:
      i) Updated Glibc (2.1.something iirc)
      ii) Updated GCC (2.95.2)
      iii) Linux v2.4.9 -> using these includes for the build

      (I upgraded pthreads in the hope that would fix it, no luck.)

      I'm thinking its time to start debugging core files -> fun fun!

      Comment


      • #4
        The other option is to use the mgatweak that somebody released for Linux I guess.

        I'd rather walk you through installing XF4.1 though. We could get it running without too much trouble.

        Switching from 3.3.6 to 4.1 (once it's built) is just a matter of changing a few symlinks. The cool part is, so is switching back, if you have problems.

        I just kept 3.3.6 RPMs around if things got really bad, but they never did.

        Kewlcat and I have compiled XFree <I>lots</I> of times, eh?

        Things get much nicer when you start using make -j4 (cut my compile time to about a third).
        Gigabyte P35-DS3L with a Q6600, 2GB Kingston HyperX (after *3* bad pairs of Crucial Ballistix 1066), Galaxy 8800GT 512MB, SB X-Fi, some drives, and a Dell 2005fpw. Running WinXP.

        Comment


        • #5
          One other thing...
          Are you compiling your kernel with the same gcc as XFree?
          It shouldn't really matter, but XFree is calling the agp module...
          Gigabyte P35-DS3L with a Q6600, 2GB Kingston HyperX (after *3* bad pairs of Crucial Ballistix 1066), Galaxy 8800GT 512MB, SB X-Fi, some drives, and a Dell 2005fpw. Running WinXP.

          Comment


          • #6
            Use .debs!

            Since Wombat mentioned RPMs, I remembered that debian unstable is using XFree 4, AFAIK. Have you tired using that? How about using the .deb for 3.3.6, if you really want that?

            As for the clocking utility, you can use either <a href="http://www.plunk.org/~grantham/mgaclock/">mgaclock</a> or <a href ="http://gmgaclock.sourceforge.net/">gmgaclock</a>. gmgaclock is more stable, but requires Gnome. gmgaclock actually looks very much like MGATweak for Windows from the MGATools site.

            Hope this helps,
            Rahul
            Porsche: MSI K7N2-L, Athlon XP 2100+, G400 32MB DualHead, 1G RAM, 2xMaxtor 20 GB, Gentoo Linux
            Quicksilver: HP Omnibook 500, PIII 700 MHz, 512MB RAM, 30GB, RedHat Linux 9.

            Comment


            • #7
              Thanks for the suggestions

              Suppose I could try the debian packages, but I think my system is too customised for them to work these days

              As to why I can't use clocking utils. I want to apply my G450 patch too! That has a slightly different DAC to the G400.

              I think I might just try the latest DRI cvs again. That always compiled OK, though I never got the G400 to accelerate properly... Does anyone know if there are still issues with multitexture?

              Comment


              • #8
                I don't know if multi-texture works correctly yet, but I know that they've gotten Tribes2 to run, which was a multi-texture issue, I believe.
                Gigabyte P35-DS3L with a Q6600, 2GB Kingston HyperX (after *3* bad pairs of Crucial Ballistix 1066), Galaxy 8800GT 512MB, SB X-Fi, some drives, and a Dell 2005fpw. Running WinXP.

                Comment


                • #9
                  Grrrrr Arrrgh

                  I tried XFree 4.1 instead and that segfaults too. Why?

                  Oh well, back to tracking down why my compile setup is dead! I found some other oddities, some of the libraries seem to magically not implement a function "atexit". Does anyone know what could cause that?

                  While I'm posting have another query. Has anyone got glquake working on with the DRI stuff? I did some builds of the 3.3.6 glx stuff with libc5, but that doesn't work. Seems odd to me as I thought it was just a protocol to send stuff over the network to X.

                  ---
                  Edit: Forgot to mention that with XF4.1 everything works (much as X3.3.6), except mozilla and XMMS. Hmmm.

                  ---
                  Edit 2(!): That includes Q3 working...
                  Looks like problem is programs that need libXi, via libgtk... Well I hope, fingers crossed! Now, what the heck is libXi!

                  ---
                  Edit 3: Not the Xi stuff. I just though that because this library has not been updated. Built the version with X4, and checked that was running. No luck. Help!
                  Last edited by foft; 8 September 2001, 10:18.

                  Comment


                  • #10
                    It works!

                    Right, got it working! Thanks to a combination of all your above suggestions:

                    i) Moved to X4 (though X3 will no doubt work now too)
                    ii) Upgraded glibc (debs) -> I discovered I had static libraries from 2.1 and dynamic from 2.2. This sounds a likely cause.
                    iii) Upgraded gcc (debs) -> now on 2.95.4 (prerelease)

                    Restarted X and it is all working nicely! Thanks go to everyone

                    Only two remaining issues:
                    i)How do I get glquake going on DRI? ldd on my binary gives all the libc5 libaries (albeit for X3?). Will I need new versions of all these? Or somehow build libGL with libc5?
                    ii) Not sure how to build the fonts. xmkmf gives a load of errors


                    ---
                    Edit: Missed a question! Anyone know how to get fullscreen mode working? No programs seem to be able to do this or change res.
                    Last edited by foft; 8 September 2001, 15:04.

                    Comment


                    • #11
                      I haven't run the glquake port yet. To run the q3demo I had to throw it a symlink to the right libGL, I think (not at home).

                      Mozilla and xmms: Did you compile, or get binaries?
                      Gigabyte P35-DS3L with a Q6600, 2GB Kingston HyperX (after *3* bad pairs of Crucial Ballistix 1066), Galaxy 8800GT 512MB, SB X-Fi, some drives, and a Dell 2005fpw. Running WinXP.

                      Comment


                      • #12
                        Re: It works!

                        Only two remaining issues:
                        i)How do I get glquake going on DRI? ldd on my binary gives all the libc5 libaries (albeit for X3?). Will I need new versions of all these? Or somehow build libGL with libc5?


                        Specifically,


                        It tells you to install the libc5 compatibility libraries, which I am sure you can debs for.

                        ii) Not sure how to build the fonts. xmkmf gives a load of errors
                        No clue here.

                        Edit: Missed a question! Anyone know how to get fullscreen mode working? No programs seem to be able to do this or change res.
                        This is covered in the HOWTO as well.

                        HTH,
                        Rahul
                        Porsche: MSI K7N2-L, Athlon XP 2100+, G400 32MB DualHead, 1G RAM, 2xMaxtor 20 GB, Gentoo Linux
                        Quicksilver: HP Omnibook 500, PIII 700 MHz, 512MB RAM, 30GB, RedHat Linux 9.

                        Comment

                        Working...
                        X