FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Gentoo > Gentoo User

 
 
LinkBack Thread Tools
 
Old 08-15-2010, 11:27 PM
"Walter Dnes"
 
Default dmesg warning about mtrr: type mismatch and allocation failed

I'm running 64-bit Gentoo on an Intel 4-core i3 with an Intel integrated
graphics controller. An excerpt from dmesg follows, with the video-
related stuff. Note the two lines that I've split off. They mention
the mtrr type mismatch and the allocation failure. Is this a problem
and if so, what do I do about it?

[ 0.519939] Linux agpgart interface v0.103
[ 0.520016] agpgart-intel 0000:00:00.0: Intel HD Graphics Chipset
[ 0.520842] agpgart-intel 0000:00:00.0: detected 131068K stolen memory
[ 0.580462] agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0xd0000000
[ 0.580740] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0
[ 0.582896] ACPI: Power Button [PWRB]
[ 0.582986] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input1
[ 0.583063] ACPI: Power Button [PWRF]
[ 0.583301] Monitor-Mwait will be used to enter C-1 state
[ 0.583314] Monitor-Mwait will be used to enter C-3 state
[ 0.583325] Monitor-Mwait will be used to enter C-3 state
[ 0.586808] [drm] Initialized drm 1.1.0 20060810
[ 0.586877] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[ 0.586934] i915 0000:00:02.0: setting latency timer to 64

[ 0.608643] mtrr: type mismatch for d0000000,10000000 old: write-back new: write-combining
[ 0.608725] [drm] MTRR allocation failed. Graphics performance may suffer.

[ 0.608815] i915 0000:00:02.0: irq 26 for MSI/MSI-X
[ 0.608819] [drm] set up 127M of stolen space
[ 0.946741] Console: switching to colour frame buffer device 240x75
[ 0.952156] fb0: inteldrmfb frame buffer device
[ 0.952176] registered panic notifier
[ 0.952208] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0

And here is an excerpt from "lspci -vv"

00:02.0 VGA compatible controller: Intel Corporation Clarkdale
Integrated Graphics Controller (rev 12) (prog-if 00 [VGA controller])
Subsystem: Micro-Star International Co., Ltd. Device 7636
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 26
Region 0: Memory at fb800000 (64-bit, non-prefetchable) [size=4M]
Region 2: Memory at d0000000 (64-bit, prefetchable) [size=256M]
Region 4: I/O ports at cc00 [size=8]
Expansion ROM at <unassigned> [disabled]
Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
Address: fee0f00c Data: 4161
Capabilities: [d0] Power Management version 2
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [a4] PCI Advanced Features
AFCap: TP+ FLR+
AFCtrl: FLR-
AFStatus: TP-
Kernel driver in use: i915

--
Walter Dnes <waltdnes@waltdnes.org>
 
Old 08-16-2010, 10:28 PM
walt
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On 08/15/2010 04:27 PM, Walter Dnes wrote:

I'm running 64-bit Gentoo on an Intel 4-core i3 with an Intel integrated
graphics controller. An excerpt from dmesg follows, with the video-
related stuff. Note the two lines that I've split off. They mention
the mtrr type mismatch and the allocation failure. Is this a problem
and if so, what do I do about it?

[ 0.519939] Linux agpgart interface v0.103
[ 0.520016] agpgart-intel 0000:00:00.0: Intel HD Graphics Chipset
[ 0.520842] agpgart-intel 0000:00:00.0: detected 131068K stolen memory
[ 0.580462] agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0xd0000000


Does your BIOS let you set the AGP aperture manually? Couldn't hurt to make
it bigger if you're able. The comment about 'stolen memory' sounds a bit evil



[ 0.608643] mtrr: type mismatch for d0000000,10000000 old: write-back new: write-combining
[ 0.608725] [drm] MTRR allocation failed. Graphics performance may suffer.


Do you have MTRR support in your linux kernel? It was selected automatically in
my SMP kernel config, so I didn't have a choice.


[ 0.946741] Console: switching to colour frame buffer device 240x75
[ 0.952156] fb0: inteldrmfb frame buffer device


I'm wondering if console framebuffer support is really necessary for Intel
graphics chips, I dunno. You could try disabling it in your kernel config
to see if it make any difference.

I'm assuming that all of the dmesg stuff came from boot time, right? Does your
/var/cache/Xorg.0.log have any suspicious messages? I'm assuming your X works
correctly? Or not.
 
Old 08-16-2010, 10:55 PM
Paul Hartman
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On Sun, Aug 15, 2010 at 6:27 PM, Walter Dnes <waltdnes@waltdnes.org> wrote:
> *I'm running 64-bit Gentoo on an Intel 4-core i3 with an Intel integrated
> graphics controller. *An excerpt from dmesg follows, with the video-
> related stuff. *Note the two lines that I've split off. *They mention
> the mtrr type mismatch and the allocation failure. *Is this a problem
> and if so, what do I do about it?

...

> [ * *0.608643] mtrr: type mismatch for d0000000,10000000 old: write-back new: write-combining
> [ * *0.608725] [drm] MTRR allocation failed. *Graphics performance may suffer.

I had a similar message, it was there because of the fact that i
specified the wrong (or failed to specify?) mtrr method in my kernel
boot parameters for the framebuffer. I'm using uvesafb and in kernel
documentation (/usr/src/linux/Documentation/fb/uvesafb.txt) it
explains the values and even gives an example of this error and what
to do about it:

<cut>
mtrr:n Setup memory type range registers for the framebuffer
where n:
0 - disabled (equivalent to nomtrr) (default)
1 - uncachable
2 - write-back
3 - write-combining
4 - write-through

If you see the following in dmesg, choose the type that matches
the old one. In this example, use "mtrr:2".
...
mtrr: type mismatch for e0000000,8000000 old: write-back new: write-combining
...
</cut>

After I changed my mtrr setting in grub's config & rebooted, the error
message went away.

HTH
 
Old 08-17-2010, 02:48 AM
"Walter Dnes"
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On Mon, Aug 16, 2010 at 03:28:21PM -0700, walt wrote

> Does your BIOS let you set the AGP aperture manually? Couldn't hurt to make
> it bigger if you're able. The comment about 'stolen memory' sounds a bit evil

The BIOS only has options for 32/64/128 megabytes. Intel cheaped out
with the on-board graphics, and used system ram, instead of its own ram.
I have 8 gigs on the machine, so 256 megs wouldn't hurt.

> I'm wondering if console framebuffer support is really necessary for Intel
> graphics chips, I dunno. You could try disabling it in your kernel config
> to see if it make any difference.

Selecting the i915 driver, or VESA, automatically forces framebuffer.
Any other selection, and X won't work. Framebuffer is right down there
with hal and dbus in my list of unfavourite drivers. Unfortunately, the
only other option is some form of VESA, which also requires framebuffer.

--
Walter Dnes <waltdnes@waltdnes.org>
 
Old 08-19-2010, 11:37 AM
"Walter Dnes"
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On Mon, Aug 16, 2010 at 05:55:04PM -0500, Paul Hartman wrote
>
> I had a similar message, it was there because of the fact that i
> specified the wrong (or failed to specify?) mtrr method in my kernel
> boot parameters for the framebuffer. I'm using uvesafb and in kernel
> documentation (/usr/src/linux/Documentation/fb/uvesafb.txt) it
> explains the values and even gives an example of this error and what
> to do about it:

I'm using the Intel driver, which doesn't have those settings. And
no, I do not want to drop down to a generic VESA driver with no hardware
acceleration. Some more Google searching has turned up a lead.
Apparently, it's possible to manually set the mtrr's, using cat and echo
with /proc/mtrr

According to "lspci -v", my integrated graphics chip has

Memory at fb800000 (64-bit, non-prefetchable) [size=4M]
Memory at d0000000 (64-bit, prefetchable) [size=256M]

My mtrr setup, however, shows up like so...

waltdnes@i3 ~ $ cat /proc/mtrr
reg00: base=0x000000000 ( 0MB), size= 8192MB, count=1: write-back
reg01: base=0x200000000 ( 8192MB), size= 1024MB, count=1: write-back
reg02: base=0x0c0000000 ( 3072MB), size= 1024MB, count=1: uncachable
reg03: base=0x0b4000000 ( 2880MB), size= 64MB, count=1: uncachable
reg04: base=0x0b8000000 ( 2944MB), size= 128MB, count=1: uncachable
reg05: base=0x1fc000000 ( 8128MB), size= 64MB, count=1: uncachable

I'll read up more on how to set it up manually. One thing that has my
curiousity right now... how come there's a gig of ram in write-back mode
*STARTING* at 8 gigs, and ending at 9 gigs minus 1 byte, when I only
have 8 gigs of ram in total?

--
Walter Dnes <waltdnes@waltdnes.org>
 
Old 08-19-2010, 02:47 PM
Bill Longman
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On 08/19/2010 04:37 AM, Walter Dnes wrote:
> On Mon, Aug 16, 2010 at 05:55:04PM -0500, Paul Hartman wrote
>>
>> I had a similar message, it was there because of the fact that i
>> specified the wrong (or failed to specify?) mtrr method in my kernel
>> boot parameters for the framebuffer. I'm using uvesafb and in kernel
>> documentation (/usr/src/linux/Documentation/fb/uvesafb.txt) it
>> explains the values and even gives an example of this error and what
>> to do about it:
>
> I'm using the Intel driver, which doesn't have those settings. And
> no, I do not want to drop down to a generic VESA driver with no hardware
> acceleration. Some more Google searching has turned up a lead.
> Apparently, it's possible to manually set the mtrr's, using cat and echo
> with /proc/mtrr
>
> According to "lspci -v", my integrated graphics chip has
>
> Memory at fb800000 (64-bit, non-prefetchable) [size=4M]
> Memory at d0000000 (64-bit, prefetchable) [size=256M]
>
> My mtrr setup, however, shows up like so...
>
> waltdnes@i3 ~ $ cat /proc/mtrr
> reg00: base=0x000000000 ( 0MB), size= 8192MB, count=1: write-back
> reg01: base=0x200000000 ( 8192MB), size= 1024MB, count=1: write-back
> reg02: base=0x0c0000000 ( 3072MB), size= 1024MB, count=1: uncachable
> reg03: base=0x0b4000000 ( 2880MB), size= 64MB, count=1: uncachable
> reg04: base=0x0b8000000 ( 2944MB), size= 128MB, count=1: uncachable
> reg05: base=0x1fc000000 ( 8128MB), size= 64MB, count=1: uncachable
>
> I'll read up more on how to set it up manually. One thing that has my
> curiousity right now... how come there's a gig of ram in write-back mode
> *STARTING* at 8 gigs, and ending at 9 gigs minus 1 byte, when I only
> have 8 gigs of ram in total?

You might want to have a look in your kernel Documentation directory.
There's a file x86/mtrr.txt that gives you some info. And lots in the fb
subdirectory. You can probably find some other info there, too. There's
lots of the dreaded MTRR info in the kernel_parameters.txt file, so you
can setup the MTRRs at boot time.
 
Old 08-19-2010, 09:32 PM
Mick
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On Thursday 19 August 2010 15:47:46 Bill Longman wrote:
> On 08/19/2010 04:37 AM, Walter Dnes wrote:
> > On Mon, Aug 16, 2010 at 05:55:04PM -0500, Paul Hartman wrote
> >
> >> I had a similar message, it was there because of the fact that i
> >> specified the wrong (or failed to specify?) mtrr method in my kernel
> >> boot parameters for the framebuffer. I'm using uvesafb and in kernel
> >> documentation (/usr/src/linux/Documentation/fb/uvesafb.txt) it
> >> explains the values and even gives an example of this error and what
> >>
> >> to do about it:
> > I'm using the Intel driver, which doesn't have those settings. And
> >
> > no, I do not want to drop down to a generic VESA driver with no hardware
> > acceleration. Some more Google searching has turned up a lead.
> > Apparently, it's possible to manually set the mtrr's, using cat and echo
> > with /proc/mtrr
> >
> > According to "lspci -v", my integrated graphics chip has
> >
> > Memory at fb800000 (64-bit, non-prefetchable) [size=4M]
> > Memory at d0000000 (64-bit, prefetchable) [size=256M]
> >
> > My mtrr setup, however, shows up like so...
> >
> > waltdnes@i3 ~ $ cat /proc/mtrr
> > reg00: base=0x000000000 ( 0MB), size= 8192MB, count=1: write-back
> > reg01: base=0x200000000 ( 8192MB), size= 1024MB, count=1: write-back
> > reg02: base=0x0c0000000 ( 3072MB), size= 1024MB, count=1: uncachable
> > reg03: base=0x0b4000000 ( 2880MB), size= 64MB, count=1: uncachable
> > reg04: base=0x0b8000000 ( 2944MB), size= 128MB, count=1: uncachable
> > reg05: base=0x1fc000000 ( 8128MB), size= 64MB, count=1: uncachable
> >
> > I'll read up more on how to set it up manually. One thing that has my
> >
> > curiousity right now... how come there's a gig of ram in write-back mode
> > *STARTING* at 8 gigs, and ending at 9 gigs minus 1 byte, when I only
> > have 8 gigs of ram in total?
>
> You might want to have a look in your kernel Documentation directory.
> There's a file x86/mtrr.txt that gives you some info. And lots in the fb
> subdirectory. You can probably find some other info there, too. There's
> lots of the dreaded MTRR info in the kernel_parameters.txt file, so you
> can setup the MTRRs at boot time.

I've read as much as I could find, but the whole hexadecimal thing has me
overwhelmed O_O

I think my mtrr is OK, but I do not understand this enough to know if it would
benefit from manual configuration.

Walter please break it into small change for me when you sort out yours - you
could contact me off list if this is getting too O/T.
--
Regards,
Mick
 
Old 08-19-2010, 09:43 PM
Paul Hartman
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On Thu, Aug 19, 2010 at 4:32 PM, Mick <michaelkintzios@gmail.com> wrote:
> I think my mtrr is OK, but I do not understand this enough to know if it would
> benefit from manual configuration.

I think, from the error you posted about originally, it's just letting
you know: "Hey, your MTRR was set wrong and we've changed it for you".
So changing it would simply make the message go away but not actually
perform any differently because you'd be setting it to the same value
it is auto-correcting it to anyway. Or that's how I understand it, at
least.
 
Old 08-19-2010, 11:24 PM
Peter Humphrey
 
Default dmesg warning about mtrr: type mismatch and allocation failed

On Thursday 19 August 2010 22:43:19 Paul Hartman wrote:

> I think, from the error you posted about originally, it's just
> letting you know: "Hey, your MTRR was set wrong and we've changed it
> for you". So changing it would simply make the message go away but
> not actually perform any differently because you'd be setting it to
> the same value it is auto-correcting it to anyway. Or that's how I
> understand it, at least.

I thought that too, until I looked a bit more closely and saw this:

[ 0.608643] mtrr: type mismatch for d0000000,10000000 old: write-back
new: write-combining
[ 0.608725] [drm] MTRR allocation failed. Graphics performance may
suffer.

"failed" seems ominous. No wonder Walter asked advice.

--
Rgds
Peter. Linux Counter 5290, 1994-04-23.
 

Thread Tools




All times are GMT. The time now is 07:26 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org