Re: MTRR vesafb and wrong X performance

From: Dave Jones
Date: Mon Nov 29 2004 - 10:49:39 EST


On Mon, Nov 29, 2004 at 12:12:08PM +0100, Gerd Knorr wrote:
> > > Please send the full dmesg output and the contents of /proc/mtrr for
> > > 2.6.10-rc2.
> > reg02: base=0xe3000000 (3632MB), size= 4MB: write-combining, count=1
> > vesafb: framebuffer at 0xe3000000, mapped to 0xcc880000, using 1875k,
> > total 4096k
>
> The BIOS reports 4MB video memory, and vesafb adds an mtrr entry for
> that. Looks ok, with the exception that the reported 4MB are probably
> not correct, otherwise the X-Server wouldn't complain.

vesafb is assuming that the memory used in the current screen mode
xres*yres*depth rounded up to nearest power of 2, is the amount of
ram the card has, which is not just wrong, it's dumb.

> vesafb in 2.6.10-rc2 has a option to overwrite the BIOS-reported value
> (vtotal=n, with n in megabytes), that should fix it.

which is an ugly hack for the above problem imo.
vesafb:nomtrr also fixes the problem, and leaves X free
to set things up correctly in my experience.

If vesafb can't get it right, maybe it shouldn't be
attempted to do it in the half-assed way it currently does.

Dave

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/