# X: conflicting memory types since 2.6.27 [SOLVED]

## jel

Since upgrading to 2.6.27 I'm seeing this in dmesg:

 *Quote:*   

> X:3153 conflicting memory types e0000000-e8000000 write-combining<->uncached-minus
> 
> reserve_memtype failed 0xe0000000-0xe8000000, track write-combining, req write-combining
> 
> X:3153 conflicting memory types e0000000-e8000000 write-combining<->uncached-minus
> ...

 

from lspci:

 *Quote:*   

> 01:00.0 VGA compatible controller: ATI Technologies Inc RV380 [Radeon X600 (PCIE)]
> 
> 01:00.1 Display controller: ATI Technologies Inc RV380 [Radeon X600]
> 
> 

 

X.Org X Server 1.5.2, using xf86-video-ati driver.

Nothing fishy in /var/log/Xorg.0.log, haven't noticed any performance issues.

----------

## Sadako

This is just a guess, but 2.6.27 added CONFIG_MTRR_SANITIZER, or "MTRR cleanup support"; *Quote:*   

> x Convert MTRR layout from continuous to discrete, so X drivers can                                                                                         x  
> 
>   x add writeback entries.                                                                                                                                    x  
> 
>   x                                                                                                                                                           x  
> ...

 grep for CONFIG_MTRR_SANITIZER in your kernel config, and if it's not set reconfigure, recompile & reboot.

FWIW, I have it enabled and it works with xf86-video-ati with an agp r500, I've never tried disabling it.

----------

## jel

Good one! Reconfigured, recompiled and rebooted. Didn't work though.

Thanks all the same!

----------

## shrike

Check kernel X86_PAT setting:

```

2500XP linux # cat /usr/src/linux/.config |grep X86_PAT

# CONFIG_X86_PAT is not set

```

Since disabling X86_PAT I have seen no 'invalid memtype' errors in /var/log/messages.

----------

## jel

 *shrike wrote:*   

> Check kernel X86_PAT setting:
> 
> ```
> 
> 2500XP linux # cat /usr/src/linux/.config |grep X86_PAT
> ...

 

Yes, that's it. PAT is interfering with MTRR. See: http://bugs.archlinux.org/task/12403 . I simply added nopat to kernel boot opts, works with 2.6.26 & 2.6.27. This may be fixed already, I haven't tried a .28 kernel yet.

----------

## icorey

can anyone provide some info on PAT and/or how to use mtrr cleanup?

I had PAT and mtrr cleanup enabled (on amd64) and my laptop became extremely slow. I disabled PAT and nothing changed.  Then I disabled mtrr cleanup and my laptop seems to be fine now.

I'm thinking maybe I set up mtrr cleanup wrong.  Some documentation would be nice, but I can't find any (and the menuconfig prompts are pretty lacking for noobs like me).

----------

## purak

Hi all, I have the same problem, I use 2.6.28-gentoo-r1(i686)

```
hadron / # cat /usr/src/linux/.config |grep X86_PAT 

# CONFIG_X86_PAT is not set

```

```
hadron / # cat /usr/src/linux/.config | grep CONFIG_MTRR_SANITIZER

CONFIG_MTRR_SANITIZER=y

CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=0

CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1

```

 *dmesg wrote:*   

> [   19.818258] mtrr: no MTRR for c0000000,8000000 found

 

only this.. Xorg doesn't work 

```
hadron ~ # lspci | grep VGA

01:00.0 VGA compatible controller: nVidia Corporation G72M [Quadro NVS 110M/GeForce Go 7300] (rev a1)

```

any idea?

----------

## acarstoiu

I know it's an old discussion, but where is the controlling menu option for CONFIG_X86_PAT ?

I'm using kernel gentoo-sources-2.6.34-r1 and I can't find any relevant option under "Processor type and features".

My log file contains random bursts of "conflicting memory type" messages, but other than that everything is fine. Or isn't it   :Confused: 

----------

