Announcement

Collapse
No announcement yet.

HD 3850 AGP lockup with OpenGL load

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

  • HD 3850 AGP lockup with OpenGL load

    I tried hard to make 3D acceleration work for my Powercolor HD 3850 AGP on the following system:

    Intel 865 mainboard (Gigabyte GA-8I848P-G)
    P4 2,8 GHz 512MB RAM

    I used fglrx drivers from Catalyst versions:
    8.7
    8.8
    8.10
    8.11
    8.12
    9.1betaRC2

    - on Ubuntu 8.10 kernel 2.6.27-9-generic
    - on Debian/Lenny kernel 2.6.26-1
    by building debs from the installer, plus one time direct install.
    (cleanup between installs by dpkg -r).

    everything installs OK, AGP initializes to 8x (intel_agp), DRI initializes, no real problems in Xorg.log visible except several warnings like
    ...
    (WW) AIGLX: 3D driver claims to not support visual 0x72
    ...

    now the problem is: every time I start an OpenGL app (glxglears or fgl_glxgears will do), the system freezes:
    With earlier drivers from Catalyst 8.8, fgl_glxgears runs for about 10 seconds; the more recent driver I use, the faster the freeze takes place:
    With 8.8 I can run
    "fgl_glxgears -loop 500"
    several times successfully, until system finally freezes in the 10th or so run.
    With 9.1betaRC2 the cube just slightly starts turning and the system immediately locks up.
    This somehow makes me unsure when hoping for upcoming driver releases to resolve the issue....

    I've been trying a hell lot of xorg Options and Option combinations from
    http://debian.wgdd.de/temp/fglrx_man/fglrx.4x.html
    without any noticeable change.

    With 8.12 I have pretty good speed in normal 2D apps, fast scrolling with Firefox, moving it around with several tabs open is no prob, too. System runs without trouble until any OpenGL app is started. (OK, I didn't test user switching and suspend - I had enough with the normal stuff...).

    On this same system, Catalyst 8.12 Windows XP drivers work fine, full AGP 8x speed, 3DMark06 runs to end without any errors, so I guess there's not a heat or PSU problem (510 W, by the way).

    Anybody a good idea what to try next - beside the obvious "go for nvidia"?

    TIA
    maddoc.

  • #2
    That sounds like you might have AGP bus problems. The XP driver automatically slows down the AGP bus until it runs reliably; I don't think the Linux drivers do that.

    Install issues don't seem like the issue here, but running with a clean install of Ubuntu 8.10 and the fglrx driver installed by the restricted driver manager would be a good way to be sure.

    I don't remember the current commands for slowing down the AGP bus but that would be the first thing I would try. Take it down to 1x and see what happens.

    Comment


    • #3
      Originally posted by bridgman View Post
      That sounds like you might have AGP bus problems. The XP driver automatically slows down the AGP bus until it runs reliably; I don't think the Linux drivers do that.

      Install issues don't seem like the issue here, but running with a clean install of Ubuntu 8.10 and the fglrx driver installed by the restricted driver manager would be a good way to be sure.

      I don't remember the current commands for slowing down the AGP bus but that would be the first thing I would try. Take it down to 1x and see what happens.
      ty for your help bridgeman.
      I tried to slow down AGP by inserting

      Option "AGPMask" "0x00000006"
      Option "AGPv3Mask" "0x00000003"

      (both and only first one), with different values, but my card is always put in 8x mode, Xorg log shows:
      ...
      (WW) fglrx(0): Option "AGPMask" is not used
      (WW) fglrx(0): Option "AGPv3Mask" is not used
      ...

      I tried to force the card into PCI mode with
      Option "BusType" "PCI"
      which seems to work, Xserver reports to run the card in PCI mode, however, kernel messages are unaffected and report AGP 8x to be used:
      ...
      [fglrx] AGP detected, AgpState = 0x1f004a1b (hardware caps of chipset)
      [fglrx] [agp] enabling AGP with mode=0x1f004b1a
      agpgart-intel 0000:00:00.0: AGP 3.0 bridge
      agpgart-intel 0000:00:00.0: putting AGP V3 device into 8x mode
      fglrx_pci 0000:01:00.0: putting AGP V3 device into 8x mode
      [fglrx] AGP enabled, AgpCommand = 0x1f004312 (selected caps)
      [fglrx] Setup AGP aperture
      [fglrx] Maximum main memory to use for locked dma buffers: 430 MBytes.
      [fglrx] Gart cacheable size:252 M.
      [fglrx] Reserved FB block: Shared offset:0, size:1000000
      [fglrx] Reserved FB block: Unshared offset:7f76000, size:8a000
      [fglrx] Reserved FB block: Unshared offset:1fffc000, size:4000
      .

      On Windows XP, SmartGart sets the card into 8x with all speed options on (fast-write etc.).

      There might be an issue with intel_agp, but I didn't succeed to switch to internal agp gart usage by inserting:

      Option "KernelModuleParm" "agpgart=0"

      AGP doesn't work without intel_agp module, blacklisting it always results in "cannot init AGP", regardless of "KernelModuleParm" setting.

      If anybody has a hint how to slow down AGP, I would like to give it a try.

      I will do a fresh 8.10 install the next days, I will report results.

      Comment


      • #4
        Yeah, I think the AGP bus options are different when running a PCIE chip over an AGP bridge (you have to program the bridge not the GPU AFAIK) but I don't know what they are.

        Comment


        • #5
          I highly doubt chaining the AGP rate will help. That did not help using the BIOS on a nForce2 system with a HD 2600 too. Kernel 2.6.24 + old ATI driver, something like 8-3 or 8-4 might work. The nForce2 system even required a blacklisting of snd-hda-intel to be able to load newer drivers, but still crashes.

          Comment


          • #6
            ASIC hang

            on a fresh Ubuntu 8.10 installation, the situation is unchanged (system locked up after starting OpenGL app), but at least I could find a trace queue dump in the system log, starting with "ASIC hang"

            maybe anyone here can read something interesting out of this?
            does "ASIC hang" mean there is a (possible hardware) error within the GPU or gfx card?

            ----------------------------- begin of related kernel messages (time stamps removed)
            [fglrx] ASIC hang happened
            Pid: 5200, comm: Xorg Tainted: P 2.6.27-9-generic #1
            [<c012989d>] ? find_busiest_group+0x15d/0x7c0
            [<e11797fd>] KCL_DEBUG_OsDump+0xd/0x10 [fglrx]
            [<e1189019>] firegl_hardwareHangRecovery+0x19/0x30 [fglrx]
            [<e121022b>] ? _ZN4Asic9WaitUntil15ResetASICIfHungEv+0xb/0x20 [fglrx]
            [<e1172c18>] ? KAS_GetTickCounter+0x8/0x10 [fglrx]
            [<e12101c7>] _ZN4Asic9WaitUntil15WaitForCompleteEv+0x97/0xf0 [fglrx]
            [<e120f1b3>] _ZN4Asic19PM4ElapsedTimeStampERK23PM4_TS_INTERRUPT _PARAMSj14_LARGE_INTEGER+0x1c3/0x200 [fglrx]
            [<e1172c38>] ? KCL_get_pubdev+0x8/0x10 [fglrx]
            [<e11a56fd>] ? firegl_trace+0x3d/0x1c0 [fglrx]
            [<e1172c38>] ? KCL_get_pubdev+0x8/0x10 [fglrx]
            [<e11a56fd>] ? firegl_trace+0x3d/0x1c0 [fglrx]
            [<e1172c38>] ? KCL_get_pubdev+0x8/0x10 [fglrx]
            [<e1201310>] _Z19uQSTimeStampRetiredjjj14_LARGE_INTEGER+0xf0/0x100 [fglrx]
            [<e11fdee9>] _Z8uCWDDEQCjjjPvjS_+0x359/0x1260 [fglrx]
            [<e11ea9d4>] CMMQS_uCWDDEQC+0x34/0x40 [fglrx]
            [<e11a8306>] firegl_cmmqs_CWDDE_32+0x3d6/0x4b0 [fglrx]
            [<c02548ca>] copy_from_user+0x3a/0x130
            [<c01c64a6>] d_materialise_unique+0x156/0x370
            [<e11a68aa>] firegl_cmmqs_CWDDE32+0x8a/0x140 [fglrx]
            [c0211bf2>] cap_capable+0x12/0x40
            [<c013a828>] capable+0x18/0x40
            [<e11a6820>] firegl_cmmqs_CWDDE32+0x0/0x140 [fglrx]
            [<e1183efd>] firegl_ioctl+0x22d/0x2b0 [fglrx]
            [<c01c64a6>] d_materialise_unique+0x156/0x370
            [<c01c64a6>] d_materialise_unique+0x156/0x370
            [<e117771e>] ip_firegl_ioctl+0x1e/0x20 [fglrx]
            [<c01c64a6>] d_materialise_unique+0x156/0x370
            [<c01beef1>] vfs_ioctl+0x81/0x90
            [<c01c64a6>] d_materialise_unique+0x156/0x370
            [<c01bf086>] do_vfs_ioctl+0x66/0x1f0
            [<c021007b>] install_process_keyring+0x1b/0xe0
            [<c02147d8>] cap_file_ioctl+0x8/0x10
            [<c01bf27b>] sys_ioctl+0x6b/0x70
            [<c0103f7b>] sysenter_do_call+0x12/0x2f
            [<c01c64a6>] d_materialise_unique+0x156/0x370
            =======================
            pubdev:0x1e134b100, num of device:-517565033 , name:<NULL>, major 56, minor -1069090554.
            device 0 : 0xe1269597dd76e000 .
            Asic ID:0x9505, revision:0x29, MMIOReg:0x8e1160000.
            FB phys addr: 0xf0000000, MC :0xc0000000, Total FB size :0x20000000.
            gart table MC:0x0, Physical:0x0, size:0x0.
            mc_node :AGP, total 1 zones
            MC start:0xe8000000, Physical:0xe8000000, size:0x8000000.
            Mapped heap -- Offset:0x2800000, size:0x800000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0x2000000, size:0x800000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0x0, size:0x2000000, reference count:8, mapping count:0,
            mc_node :FB, total 1 zones
            MC start:0xc0000000, Physical:0xf0000000, size:0x8000000.
            Mapped heap -- Offset:0x0, size:0x7f76000, reference count:6, mapping count:0,
            Mapped heap -- Offset:0x0, size:0x1000000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0x7f76000, size:0x8a000, reference count:1, mapping count:0,
            mc_node :INV_FB, total 1 zones
            MC start:0xc8000000, Physical:0xf8000000, size:0x18000000.
            Mapped heap -- Offset:0x17ffc000, size:0x4000, reference count:1, mapping count:0,
            mc_node :GART_CACHEABLE, total 3 zones
            MC start:0xaf300000, Physical:0x0, size:0x10d00000.
            Mapped heap -- Offset:0xc00000, size:0x100000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0xb00000, size:0x100000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0xa00000, size:0x100000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0x900000, size:0x100000, reference count:1, mapping count:0,
            Mapped heap -- Offset:0x200000, size:0x700000, reference count:2, mapping count:0,
            Mapped heap -- Offset:0x0, size:0x200000, reference count:2, mapping count:0,
            Mapped heap -- Offset:0xef000, size:0x11000, reference count:1, mapping count:0,
            Dump the trace queue.
            End of dump
            syslogd 1.5.0#2ubuntu6: restart.
            -------------------------------------------------- end of messages

            Comment


            • #7
              If you don't know where to get a 2.6.24 kernel, just install U 8.04 if you are an U fan. To test differnt drivers, the most easy way is to use my script:

              http://kanotix.com/files/install-fglrx-debian.sh

              Run it like:

              sh install-fglrx-debian.sh -v 8-3
              Last edited by Kano; 01-04-2009, 11:49 AM.

              Comment


              • #8
                Originally posted by Kano View Post
                If you don't know where to get a 2.6.24 kernel, just install U 8.04 if you are an U fan.
                Well, I'm more a Debian fan, just switched to U temporarily since I hoped to resolve these issues more quickly, or at least to see wether a solution will be in sight. I have Lenny installed on another partition. AFAIK there's no 2.6.24 kernel in official Lenny repos (?).

                Moreover, my motivation of getting tied to a certain (older) kernel version is low. If there was hope that any future fglrx release would resolve the issue, it would be a nice workaround, 8.04 would be ok since it's an LTS version. But I'm afraid the AGP thing will not be on focus by AMD devs and future fglrx updates won't help me.

                Generally, I'm thinking hard about throwing this 3850 AGP card onto ebay and better buy an Nvidia card, although Nvidia doesn't offer that much power on the AGP side anymore.

                Is the situation with PCI-E cards and fglrx better? When reading this forum here, I wouldn't bet...

                ty for your script, read a lot here about it and people really seem to love it.
                I will give it a try on lenny, do you know a repo for a 2.6.24 kernel? I know how to build my own kernel (no big deal with make-kpkg), but I decided to rely on stock kernels for security issues and convenience (ok, comes first)...
                Last edited by maddoc; 01-04-2009, 12:33 PM.

                Comment


                • #9
                  You could try changing the AGP Aperture size in bios, that sometimes helps with fglrx.

                  Comment


                  • #10
                    Originally posted by legume View Post
                    You could try changing the AGP Aperture size in bios, that sometimes helps with fglrx.
                    tried that already, it had no effect on the problem. Somewhere I've read AGP aperture should be equal to the amount of video memory for fglrx, but my mainboard only allows up to 256M (512M on the 3850 card).

                    Comment

                    Working...
                    X