MTRRs not working in 2.6 linux kernels?
Dave Jones
davej at redhat.com
Mon Oct 4 10:40:39 PDT 2004
On Sun, Oct 03, 2004 at 10:33:28PM -0400, Jonathan Thambidurai wrote:
> When I try to use the application tvtime under Xorg 6.8.1 with Linux
> kernel 2.6.7, I get very choppy framerates; tvtime indicates that it is
> only getting about 50 MB/s for blitting to the screen. With the same
> version of Xorg and Linux kernel 2.4.22, I get smooth play, and tvtime
> indicates that it gets about 150 MB/s for blitting to screen. I made
> sure DRI wasn't playing a role in this by rmmod'ing the agpgart module
> before starting X.
>
> Of note is the difference in /proc/mtrr between 2.6 and 2.4
> kernels:
>
> in 2.4, it contains only
>
> reg00: base=0x00000000 ( 0MB), size= 256MB: write-back, count=1
> reg01: base=0x0ff80000 ( 255MB), size= 512KB: uncachable, count=1
>
> while in 2.6 it contains
>
> reg00: base=0x00000000 ( 0MB), size= 256MB: write-back, count=1
> reg01: base=0x0ff80000 ( 255MB), size= 512KB: uncachable, count=1
> reg02: base=0xe8000000 (3712MB), size= 2MB: write-combining, count=1
VesaFB creates an MTRR in 2.6. The problem is it only creates one
big enough to cover x resolution * y resolution * depth, which is
nearly always less than the size of the video ram.
> Perhaps this is a kernel issue and should be posted to the kernel list?
> Any help would be appreciated.
Until someone either removes that from teh kernel, or fixes it to size
ram properly, you can boot with a vesafb=nomtrr option iirc.
Dave
More information about the xorg
mailing list