Hi all,
I’m having trouble getting fglrx working with my graphics card. The driver appears to be installed OK
[nathan@ebisu ~] lsmod | grep -i fgl
fglrx 2350824 26
…but it doesn’t seem to actually work
[nathan@ebisu ~] glxgears
Segmentation fault
[nathan@ebisu ~] glxinfo
name of display: :0.0
Segmentation fault
===First, the vital stats
[nathan@ebisu ~] uname -a
Linux ebisu 2.6.27.29-0.1-default #1 SMP 2009-08-15 17:53:59 +0200 x86_64 x86_64 x86_64 GNU/Linux
[nathan@ebisu ~] lspci
00:00.0 Host bridge: Intel Corporation 4 Series Chipset DRAM Controller (rev 02)
00:01.0 PCI bridge: Intel Corporation 4 Series Chipset PCI Express Root Port (rev 02)
00:1a.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #4
00:1a.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #5
00:1a.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #6
00:1a.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #2
00:1b.0 Audio device: Intel Corporation 82801JI (ICH10 Family) HD Audio Controller
00:1c.0 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Port 1
00:1c.5 PCI bridge: Intel Corporation 82801JI (ICH10 Family) PCI Express Port 6
00:1d.0 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #1
00:1d.1 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #2
00:1d.2 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB UHCI Controller #3
00:1d.7 USB Controller: Intel Corporation 82801JI (ICH10 Family) USB2 EHCI Controller #1
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 90)
00:1f.0 ISA bridge: Intel Corporation 82801JIR (ICH10R) LPC Interface Controller
00:1f.2 SATA controller: Intel Corporation 82801JI (ICH10 Family) SATA AHCI Controller
00:1f.3 SMBus: Intel Corporation 82801JI (ICH10 Family) SMBus Controller
01:00.0 VGA compatible controller: ATI Technologies Inc RV770 [Radeon HD 4850]
01:00.1 Audio device: ATI Technologies Inc HD48x0 audio
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 PCI-E Gigabit Ethernet Controller (rev 12)
04:02.0 Ethernet controller: Marvell Technology Group Ltd. 88E8001 Gigabit Ethernet Controller (rev 14)
04:03.0 FireWire (IEEE 1394): Agere Systems FW323 (rev 70)
This is OpenSUSE 11.1 x64.
=== More details on the problem
[nathan@ebisu ~] dmesg | grep fgl
fglrx: module license 'Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY' taints kernel.
[fglrx] Maximum main memory to use for locked dma buffers: 3794 MBytes.
[fglrx] vendor: 1002 device: 9442 count: 1
[fglrx] ioport: bar 4, base 0xc000, size: 0x100
[fglrx] Kernel PAT support detected, disabling driver built-in PAT support
[fglrx] module loaded - fglrx 8.58.2 [Feb 4 2009] with 1 minors
[fglrx] Firegl kernel thread PID: 3679
[fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)
[fglrx] Gart cacheable size:1974 M.
[fglrx] Reserved FB block: Shared offset:0, size:1000000
[fglrx] Reserved FB block: Unshared offset:fc19000, size:3e7000
[fglrx] Reserved FB block: Unshared offset:1fffb000, size:5000
[fglrx:firegl_mmap] *ERROR* invalid size (mapsize 0x00010000, (map_end - map_start) 0x65698000)
glxinfo[30006]: segfault at c ip 00007faaa897b096 sp 00007fff88d4e740 error 4 in fglrx_dri.so[7faaa8026000+14b5000]
[fglrx:firegl_mmap] *ERROR* invalid size (mapsize 0x00010000, (map_end - map_start) 0x65698000)
glxinfo[30008]: segfault at c ip 00007fd3c978c096 sp 00007fff1fe700a0 error 4 in fglrx_dri.so[7fd3c8e37000+14b5000]
[fglrx:firegl_mmap] *ERROR* invalid size (mapsize 0x00010000, (map_end - map_start) 0x65698000)
glxgears[30088]: segfault at c ip 00007f38165b3096 sp 00007fff706285a0 error 4 in fglrx_dri.so[7f3815c5e000+14b5000]
[fglrx:firegl_mmap] *ERROR* invalid size (mapsize 0x00010000, (map_end - map_start) 0x65698000)
glxgears[30932]: segfault at 0 ip 00007fecec51e5b2 sp 00007fff43223650 error 4 in fglrx_dri.so[7fecec410000+11f9000]
[fglrx:firegl_mmap] *ERROR* invalid size (mapsize 0x00010000, (map_end - map_start) 0x65698000)
glxinfo[30933]: segfault at 0 ip 00007f020fb665b2 sp 00007fff40a95cf0 error 4 in fglrx_dri.so[7f020fa58000+11f9000]
[nathan@ebisu ~] fglrxinfo
Segmentation fault
[nathan@ebisu ~] dmesg | grep mtrr
mtrr: type mismatch for d0000000,10000000 old: write-back new: write-combining
[fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)
[nathan@ebisu ~] cat /proc/mtrr
reg00: base=0x00000000 ( 0MB), size=4096MB: write-back, count=1
reg01: base=0x100000000 (4096MB), size= 512MB: write-back, count=1
reg02: base=0x120000000 (4608MB), size= 256MB: write-back, count=1
reg04: base=0xe0000000 (3584MB), size= 512MB: uncachable, count=1
Sorry if I’ve missed anything.
=== Comments
I did some Googling, of course, and found a lot of stuff about mtrr mapping problems, but none of them described my symptoms. It looks from /proc/mtrr as though the mtrr is being mapped properly (this is a 512MB card), but it’s just not working for whatever reason.
If the solution is to use some other driver (radeonhd?) then so be it, but I’d like to understand why this one isn’t working.
Help greatly appreciated!
Thanks,
Nathan