mtrr allocation failed

Bug #3598 reported by Carlos
18
Affects Status Importance Assigned to Milestone
usplash (Ubuntu)
Fix Released
Medium
Ubuntu-X
xorg (Ubuntu)
Breezy
Invalid
Medium
Unassigned

Bug Description

When I installed the fglrx driver I got some errors (see below) and finally I haven't got the 3d acceleration working.

dmesg.log
[4294714.302000] fglrx: module license 'Proprietary. (C) 2002 - ATI Technologies, Starnberg, GERMANY' taints kernel.
[4294714.305000] [fglrx] Maximum main memory to use for locked dma buffers: 680 MBytes.
[4294714.305000] [fglrx] module loaded - fglrx 8.16.20 [Aug 16 2005] on minor 0
[4294714.329000] [fglrx:firegl_addmap] *ERROR* mtrr allocation failed (-22)
[4294714.329000] [fglrx] Kernel AGP support doesn't provide agplock functionality.
[4294714.329000] [fglrx] AGP detected, AgpState = 0x1f000217 (hardware caps of chipset)
[4294714.329000] [fglrx:firegl_unlock] *ERROR* Process 9201 using kernel context 0

cat /proc/mtrr
reg00: base=0x00000000 ( 0MB), size=983552MB: write-back, count=1
reg01: base=0x20000000 ( 512MB), size=983296MB: write-back, count=1
reg02: base=0xe0000000 (3584MB), size=983296MB: write-combining, count=1
reg03: base=0xe0000000 (3584MB), size=983296MB: write-combining, count=1
reg04: base=0xc0000000 (3072MB), size=983296MB: write-combining, count=1

xorg.log
(II) fglrx(0): [drm] loaded kernel module for "fglrx" driver
(II) fglrx(0): [drm] DRM interface version 1.0
(II) fglrx(0): [drm] created "fglrx" driver at busid "PCI:1:0:0"
(II) fglrx(0): [drm] added 8192 byte SAREA at 0xf0db6000
(II) fglrx(0): [drm] mapped SAREA 0xf0db6000 to 0xb7ad2000
(II) fglrx(0): [drm] framebuffer handle = 0xe0000000
(II) fglrx(0): [drm] added 1 reserved context for kernel
(II) fglrx(0): DRIScreenInit done
(II) fglrx(0): Kernel Module Version Information:
(II) fglrx(0): Name: fglrx
(II) fglrx(0): Version: 8.16.20
(II) fglrx(0): Date: Aug 16 2005
(II) fglrx(0): Desc: ATI FireGL DRM kernel module
(II) fglrx(0): Kernel Module version matches driver.
(II) fglrx(0): Kernel Module Build Time Information:
(II) fglrx(0): Build-Kernel UTS_RELEASE: 2.6.12-9-686-smp
(II) fglrx(0): Build-Kernel MODVERSIONS: no
(II) fglrx(0): Build-Kernel __SMP__: no
(II) fglrx(0): Build-Kernel PAGE_SIZE: 0x1000
(II) fglrx(0): [drm] register handle = 0xbf800000
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_EINVAL"
(EE) fglrx(0): cannot init AGP
(II) fglrx(0): [drm] removed 1 reserved context for kernel
(II) fglrx(0): [drm] unmapping 8192 bytes of SAREA 0xf0db6000 at 0xb7ad2000
(WW) fglrx(0): ***********************************************
(WW) fglrx(0): * DRI initialization failed! *
(WW) fglrx(0): * (maybe driver kernel module missing or bad) *
(WW) fglrx(0): * 2D acceleraton available (MMIO) *
(WW) fglrx(0): * no 3D acceleration available *
(WW) fglrx(0): ********************************************* *
(II) fglrx(0): FBADPhys: 0xe0000000 FBMappedSize: 0x04000000
(WW) fglrx(0): Failed to set up write-combining range (0xe0000000,0x4000000)
(II) fglrx(0): FBMM initialized for area (0,0)-(1600,8191)
(II) fglrx(0): FBMM auto alloc for area (0,0)-(1600,1200) (front color buffer - assumption)
(==) fglrx(0): Backing store disabled
(==) fglrx(0): Silken mouse enabled
(II) fglrx(0): Using hardware cursor (scanline 1200)
(II) fglrx(0): Largest offscreen area available: 1600 x 6988
(**) Option "dpms"
(**) fglrx(0): DPMS enabled
(II) fglrx(0): Using XFree86 Acceleration Architecture (XAA)
        Screen to screen bit blits
        Solid filled rectangles
        Solid Horizontal and Vertical Lines
        Offscreen Pixmaps
        Setting up tile and stipple cache:
                32 128x128 slots
                32 256x256 slots
                16 512x512 slots
(II) fglrx(0): Acceleration enabled
(II) fglrx(0): Direct rendering disabled

Changed in xorg:
assignee: nobody → daniels
Revision history for this message
Carlos (clp) wrote :

I don't know if this error must be reported to bugzilla.ubuntu.com

Changed in xorg:
assignee: nobody → daniels
Daniel Stone (daniels)
Changed in xorg:
assignee: daniels → nobody
assignee: daniels → nobody
Revision history for this message
Fabio Massimo Di Nitto (fabbione) wrote :

can't fix.

Changed in xorg:
status: Unconfirmed → Rejected
Revision history for this message
Harrison Metzger (harrisonmetz) wrote :

Yes. I have weird MTRR alloication errors and I have an X800XT (agp). However there are work arounds, but thats no excuse that to examine this pretty serious bug in my oppinion. Check the rage3d.com for how to fix MTRR alloication errors. However, the kernel (or whatever module configures the memory type range registers) needs to realize that I dont have 20 terrbytes of ram.

Changed in xorg-driver-fglrx:
assignee: nobody → ubuntu-x-swat
Revision history for this message
Andre Moraes (andrelmoraes) wrote :

The same happens to me, with ASUS K8N, AMD Athlon 64 and Dapper 32-bits.

Revision history for this message
Andrew Ash (ash211) wrote :

Assigning to package xserver-xorg-video-ati

Revision history for this message
Mark Eaton (eaton-mark) wrote :

I get this problem if I use usplash and set a vga=??? as a boot option. if I remove usplash from the boot parameters it works fine.

Revision history for this message
Andrew Ash (ash211) wrote :

Sounds like a usplash problem too then. Until this gets hammered out more, I'm going to assign it to usplash so hopefully a pair of eyes that can solve the problem will be able to fix it. Feel free to change it to whatever is appropriate.

Changed in xserver-xorg-video-ati:
status: Unconfirmed → Needs Info
Revision history for this message
Mark Eaton (eaton-mark) wrote :

This no longer happens to me even if I use usplash

Revision history for this message
Andrew Ash (ash211) wrote :

Andre, Harrison: Is it still a problem for you too?

Revision history for this message
Jeff Rasmussen (jeffrasmussen) wrote :

This still happens for me. To fix it I created /etc/init.d/fix_mtrr

#!/bin/sh
# Fix wrong MTRR setting
echo "disable=0" > /proc/mtrr
echo "disable=1" > /proc/mtrr
echo "disable=2" > /proc/mtrr
echo "base=0x0 size=0x80000000 type=write-back" > /proc/mtrr

size=0x80000000 correlates to 2GB of main computer memory. Otherwise cat /proc/mtrr showed 64000 MB of memory (around 64 TB of memory). Now cat /proc/mtrr shows:

reg00: base=0x00000000 ( 0MB), size=2048MB: write-back, count=1
reg01: base=0xc0000000 (3072MB), size= 256MB: write-combining, count=4

I'm using a fairly new Dell Optiplex 745 with an ATI X1300 graphics card.

Revision history for this message
Jeff Rasmussen (jeffrasmussen) wrote :

Forgot to mention the 'update-rc.d fix_mtrr start 12 2 3 4 5' to create the symlinks.

Revision history for this message
Fridtjof Busse (fbusse-deactivatedaccount-deactivatedaccount) wrote :

I have the same problem on a Dell Optiplex 745, my /proc/mtrr looks like this (1 GB RAM):

reg00: base=0x00000000 ( 0MB), size=65536MB: write-back, count=1
reg01: base=0x3ff00000 (1023MB), size= 1MB: uncachable, count=1
reg02: base=0x40000000 (1024MB), size=1024MB: uncachable, count=1
reg03: base=0x80000000 (2048MB), size=2048MB: uncachable, count=1

I'll try the fix (as the incorrect /proc/mtrr messes up fglrx), but an upstream-fix would be nice.

Revision history for this message
Fridtjof Busse (fbusse-deactivatedaccount-deactivatedaccount) wrote :

Note: The fix with /etc/init.d/fix_mtrr gives me a correct /proc/mtrr (although I had to add 'echo "disable=3" > /proc/mtrr' to the script).
Neither deactivating splash nor vga works for me. In both cases the mtrr is incorrect.
Booting with splash without vga makes it impossible to switch to any of the consoles (but that is a different bug).

Revision history for this message
Jeff Rasmussen (jeffrasmussen) wrote : Re: [Bug 3598] Re: mtrr allocation failed

I had the problem with the consoles too. If you modify your
/boot/grub/menu.lst and modify the defoptions line to remove the
splash item, you will not have the console problem.

## defoptions=quiet splash
# defoptions=quiet

I still haven't been able to get 3D working although I was able to get
the ATI drivers to load correctly. All I see is a black window with
980 fps lines showing up in the background.

On 11/20/06, Fridtjof Busse <email address hidden> wrote:
> Note: The fix with /etc/init.d/fix_mtrr gives me a correct /proc/mtrr (although I had to add 'echo "disable=3" > /proc/mtrr' to the script).
> Neither deactivating splash nor vga works for me. In both cases the mtrr is incorrect.
> Booting with splash without vga makes it impossible to switch to any of the consoles (but that is a different bug).
>
> --
> mtrr allocation failed
> https://launchpad.net/bugs/3598
>

--
Jeff Rasmussen
GPG public key 0x9686C12F

Revision history for this message
Fridtjof Busse (fbusse-deactivatedaccount-deactivatedaccount) wrote :

Yes, I know that deactivating splash (could use 'nosplash' as well) fixes the problem with the consoles, but using vga=$something works as well.
But I have the same problem, glxgears as well as fgl_glxgears show just a black window.
I'm going to try the current fglrx from ati.com

Revision history for this message
Fridtjof Busse (fbusse-deactivatedaccount-deactivatedaccount) wrote :

The current ATI-driver 8.31.5 fixes the problems with fgl_glxgears for me. It compiles just fine and brings fgl_glxgears (with and without the mtrr-fix) back to live. glxgears still doesn't work though.

Revision history for this message
Timo Jyrinki (timo-jyrinki) wrote :

Reported to be fixed. And anyway probably a problem in xorg-driver-fglrx, and thus cannot be fixed by the community anyway, only AMD/ATI.

Changed in usplash:
status: Incomplete → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.