[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#365441: xserver-xorg-video-savage: XVideo extension using too much CPU



On Sun, Apr 30, 2006 at 11:40:37AM +0200, Michel Dänzer wrote:
>On Sat, 2006-04-29 at 23:11 -0400, John Gruenenfelder wrote:
>> Package: xserver-xorg-video-savage
>> Version: 1:2.0.2.3-4
>> Severity: normal
>> 
>> After upgrading to the new modular X packages, I find that my X setup
>> now uses an excessive amount of CPU time to play back video when using
>> the XVideo extension.
>> 
>> The machine is my MythTV box.  It is a small Shuttle box with builtin
>> "S3 Inc. VT8375 [ProSavage8 KM266/KL266]" video on the motherboard.
>> With the previous X packages video playback was excellent.  The problem
>> appears to affect any program which makes use of the XVideo extension
>> (MythTV, mplayer, xine, etc.).
>
>This is most likely a duplicate of
>http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=362755 .

It does look very similar.  The report mentions being able to temporarily fix
this by manually setting the MTRR.

If I could do this, I could test this and let you know for certain.
Unfortunately, the other bug report does not give any specifics for this.
Looking at the mtrr.txt file included with the kernel, I have tried a few
things.  The current MTRRs are:

reg00: base=0x00000000 (   0MB), size= 512MB: write-back, count=1
reg01: base=0x1e000000 ( 480MB), size=  32MB: uncachable, count=1
reg02: base=0xd8000000 (3456MB), size=  64MB: write-combining, count=1
reg05: base=0xd8000000 (3456MB), size=  64MB: write-combining, count=1

reg01 is the video framebuffer.  Because this is a motherboard video chipset,
the video memory is taken from main memory.  I am having trouble setting the
MTRR to what I believe it should be:

foxstar:~# echo "base=0x1e000000 size=0x2000000 type=write-combining" >| /proc/mtrr
bash: echo: write error: Invalid argument

So I tried getting rid of the existing MTRR settings first:

foxstar:~# echo "disable=1" >| /proc/mtrr
foxstar:~# cat /proc/mtrr
reg00: base=0x00000000 (   0MB), size= 512MB: write-back, count=1
reg02: base=0xd8000000 (3456MB), size=  64MB: write-combining, count=1
reg05: base=0xd8000000 (3456MB), size=  64MB: write-combining, count=1
foxstar:~# echo "base=0x1e000000 size=0x2000000 type=write-combining" >| /proc/mtrr
bash: echo: write error: Invalid argument

Am I doing something wrong here?  Or perhaps this must be done differently
when the video memory is under the same MTRR as the main system memory?


--
--John Gruenenfelder    Research Assistant, UMass Amherst student
                        Systems Manager, MKS Imaging Technology, LLC.
Try Weasel Reader for PalmOS  --  http://gutenpalm.sf.net
"This is the most fun I've had without being drenched in the blood
of my enemies!"
        --Sam of Sam & Max



Reply to: