# MTRR not Aligned Err - Acer Aspire 1414WLCi - Intel Chipset

## roderick

I've spent a while now attempting to get everything working on my laptop to peak performance.

I've gotten everything updated to latest stable releases, and cleared up every error from the logs and kernel except for two, one of which I don't think is a problem based on some reseach, and the second may not be system threatening, but it's more than likely responsible for less than optimal video performance on my system.

Here are the two errors. The one I believe to be a issue, is the MTRR one:

```
mtrr: base(0xe8020000) is not aligned on a size(0x300000) boundary

spurious 8259A interrupt: IRQ7.

```

The interrupt problem (from my research) is apparently normal for this chipset. So, I'm not going to worry about it (for now).

Here's the contents of /proc/mtrr:

```
fortune ~ # cat /proc/mtrr

reg00: base=0x00000000 (   0MB), size= 512MB: write-back, count=1

reg01: base=0x1df00000 ( 479MB), size=   1MB: uncachable, count=1

reg02: base=0x1e000000 ( 480MB), size=  32MB: uncachable, count=1

reg03: base=0xe8000000 (3712MB), size= 128MB: write-combining, count=3

```

I have splashutils installed and working and turned off mtrr, as it caused some overlap errors. I have an intel chipset (855GME) and used the vesa frame buffer driver.

Here's my lilo.conf:

```
compact

lba32

boot="/dev/hda"

map = /boot/.map

install = /boot/boot-menu.b

menu-scheme=Wb

prompt

timeout="50"

delay = 50

vga = 792

default=Gentoo

image="/boot/vmlinuz"

        root="/dev/hda7"

        label="Gentoo"

        read-only # read-only for checking

        append="video=vesafb:1024x768-24@60,nomtrr,ywrap quiet CONSOLE=/dev/tty1 splash=silent,fadein,theme:gentoo"

        initrd="/boot/fbsplash-gentoo-1024x768"

```

When I run glxgears, I get about 600-700 fps, and X is doing direct rendering. For my system, I would have expected somewhere around 1000+ fps. Anyway, I won't worry about that (again for now).

Here's lspci:

```
fortune ~ # lspci

0000:00:00.0 Host bridge: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)

0000:00:00.1 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)

0000:00:00.3 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)

0000:00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)

0000:00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)

0000:00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03)

0000:00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03)

0000:00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03)

0000:00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03)

0000:00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83)

0000:00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 03)

0000:00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)

0000:00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 03)

0000:00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)

0000:00:1f.6 Modem: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Modem Controller (rev 03)

0000:02:02.0 Ethernet controller: Broadcom Corporation BCM4401 100Base-T (rev 01)

0000:02:04.0 Ethernet controller: Linksys, A Division of Cisco Systems [AirConn] INPROCOMM IPN 2220 Wireless LAN Adapter (rev 01)

0000:02:06.0 CardBus bridge: Texas Instruments PCIxx21/x515 Cardbus Controller

0000:02:06.2 FireWire (IEEE 1394): Texas Instruments OHCI Compliant IEEE 1394 Host Controller

0000:02:06.3 Mass storage controller: Texas Instruments PCIxx21 Integrated FlashMedia Controller

```

And lsmod:

```
fortune ~ # lsmod

Module                  Size  Used by

i915                   17920  1

drm                    60948  2 i915

pcmcia                 21512  2

snd_pcm_oss            48416  0

snd_mixer_oss          17408  1 snd_pcm_oss

snd_seq_oss            32640  0

snd_seq_midi_event      6528  1 snd_seq_oss

snd_seq                49936  4 snd_seq_oss,snd_seq_midi_event

snd_seq_device          7052  2 snd_seq_oss,snd_seq

ohci1394               32436  0

ieee1394               90676  1 ohci1394

yenta_socket           20488  1

rsrc_nonstatic          9728  1 yenta_socket

pcmcia_core            42888  3 pcmcia,yenta_socket,rsrc_nonstatic

snd_intel8x0           29248  1

snd_ac97_codec         79992  1 snd_intel8x0

snd_pcm                83336  3 snd_pcm_oss,snd_intel8x0,snd_ac97_codec

snd_timer              21508  2 snd_seq,snd_pcm

snd                    45540  11 snd_pcm_oss,snd_mixer_oss,snd_seq_oss,snd_seq,snd_seq_device,snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer

soundcore               7648  1 snd

snd_page_alloc          7812  2 snd_intel8x0,snd_pcm

i2c_i801                7820  0

joydev                  8256  0

evdev                   7552  1

acpi_sbs               21520  0

i2c_acpi_ec             5504  0

i2c_core               18064  2 i2c_i801,i2c_acpi_ec

video                  14212  0

container               3328  0

thermal                11016  0

processor              18740  1 thermal

fan                     3332  0

button                  5136  0

```

My main concern is seeing what I can do about the "mtrr not alligned" problem.

If there are any other specific sections of my config/system that would be needed to help diagnose, please let me know.

I have been scouring this site and the internet for a solution, but I've yet to find one that matched this issue, other than those saying "if nothings broken, then don't worry". To me, it does matter. I need to know why this is happening and how to correct. If it's a problem with the driver, perhaps the auther can correct or someone can provide/write a patch. I'd even be willing to take a crack at it, if I knew why this was happening.

Kind regards in advance to any able to provide help.

Rod.

----------

## roderick

Here's a portion of my X.org log file:

```
drmOpenByBusid: Searching for BusID pci:0000:00:02.0

drmOpenDevice: node name is /dev/dri/card0

drmOpenDevice: open result is 7, (OK)

drmOpenByBusid: drmOpenMinor returns 7

drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0

(II) I810(0): [drm] loaded kernel module for "i915" driver

(II) I810(0): [drm] DRM interface version 1.2

(II) I810(0): [drm] created "i915" driver at busid "pci:0000:00:02.0"

(II) I810(0): [drm] added 8192 byte SAREA at 0xdef92000

(II) I810(0): [drm] mapped SAREA 0xdef92000 to 0xb7ce5000

(II) I810(0): [drm] framebuffer handle = 0xe8020000

(II) I810(0): [drm] added 1 reserved context for kernel

```

Notice the "(II) I810(0): [drm] framebuffer handle = 0xe8020000" line. Same memeory area as the MTRR error reported.

X is loading the fb module. Is that what I am doing wrong? 

Here's my xorg config file:

```
Section "Module"

    Load        "dbe"

    SubSection  "extmod"

      Option    "omit xfree86-dga"

    EndSubSection

    Load       "type1"

    Load       "freetype"

    Load       "glx"

    Load       "dri"

    Load       "synaptics"

EndSection

Section "Files"

    RgbPath     "/usr/lib/X11/rgb"

    FontPath    "/usr/share/fonts/misc:unscaled"

    FontPath    "/usr/share/fonts/Type1"

    FontPath    "/usr/share/fonts/TTF"

    FontPath    "/usr/share/fonts/corefonts"

    FontPath    "/usr/share/fonts/freefont"

    FontPath    "/usr/share/fonts/sharefonts"

    FontPath    "/usr/share/fonts/terminus"

    FontPath    "/usr/share/fonts/ttf-bitstream-vera"

    FontPath    "/usr/share/fonts/artwiz"

    FontPath    "/usr/share/fonts/unifont"

    FontPath    "/usr/share/fonts/75dpi:unscaled"

    FontPath    "/usr/share/fonts/100dpi:unscaled"

    FontPath    "/usr/share/fonts/cyrillic"

EndSection

Section "InputDevice"

    Identifier  "LTKeyBrd"

    Driver      "kbd"

    Option "AutoRepeat" "500 30"

    Option "XkbModel"   "pc101"

    Option "XkbLayout"  "us"

EndSection

Section "InputDevice"

    Identifier  "LogitechMouse"

    Driver      "mouse"

    Option "Protocol"    "Auto"

    Option "Device"      "/dev/mouse"

    Option "ZAxisMapping"      "4 5"

EndSection

Section "InputDevice"

    Identifier "SynTouchPad"

    Driver "synaptics"

    Option "Device" "/dev/psaux"

    Option "Protocol" "auto-dev"

    Option "LeftEdge" "1700"

    Option "RightEdge" "5300"

    Option "TopEdge" "1700"

    Option "BottomEdge" "4200"

    Option "FingerLow" "25"

    Option "FingerHigh" "30"

    Option "MaxTapTime" "180"

    Option "MaxTapMove" "220"

    Option "VertScrollDelta" "100"

    Option "MinSpeed" "0.09"

    Option "MaxSpeed" "0.18"

    Option "AccelFactor" "0.0015"

EndSection

Section "Monitor"

    Identifier  "LTLCD"

    Option "DPMS" "true"

EndSection

Section "Device"

    Identifier  "855GME"

    Driver      "i810"

    VideoRam    65536

    Option      "Accel" "true"

    BusID       "PCI:0:2:0"

EndSection

Section "Screen"

    Identifier  "Internal LCD"

    Device      "855GME"

    Monitor     "LTLCD"

    DefaultDepth 24

    Subsection "Display"

        Depth       8

        Modes       "1024x768" "800x600" "640x480"

        ViewPort    0 0

    EndSubsection

    Subsection "Display"

        Depth       16

        Modes       "1024x768" "800x600" "640x480"

        ViewPort    0 0

    EndSubsection

    Subsection "Display"

        Depth       24

        Modes       "1024x768" "800x600" "640x480"

        ViewPort    0 0

    EndSubsection

EndSection

Section "ServerLayout"

    Identifier  "Portable Layout"

    Screen "Internal LCD"

    InputDevice "LogitechMouse" "CorePointer"

    InputDevice "SynTouchPad" "AlwaysCore"

    InputDevice "LTKeyBrd" "CoreKeyboard"

EndSection

Section "DRI"

    Mode 0666

EndSection

```

The X log shows that it detects the frame buffer and vesa driver. Not sure if it should or if I can/should prevent it from doing so. It does appear to be related to the alignment issue.

Thanks.

----------

## roderick

I have checked through the kernel source, and here's the file which is spewing the warning:

arch/i386/kernel/cpu/mtrr/generic.c

```
        /*  Check upper bits of base and last are equal and lower bits are 0

            for base and 1 for last  */

        last = base + size - 1;

        for (lbase = base; !(lbase & 1) && (last & 1);

             lbase = lbase >> 1, last = last >> 1) ;

        if (lbase != last) {

                printk(KERN_WARNING "mtrr: base(0x%lx000) is not aligned on a size(0x%lx000) boundary\n",

                       base, size);

                return -EINVAL;

        }

```

----------

## roderick

Just to try out a different setup, I emerged xorg-x11-6.8.99.15. Needless to say, it b0rked completely.

Sure, X loaded up, but no Direct Rendering worked. It complained about no memory as it either couldn't read /dev/agpgart or there was insufficient memory. Weird that the exact same kernel and modules works with X 6.8.2 and I get direct rendering (albeit... the mtrr issue I've been trying to solve).

I guess no one has been able to figure this out either.

Anyway, so I went back to 6.8.2. 

Still trying to correct the mtrr alignment issue...

----------

