Dear co-developers! So, I did a deep research and found out the following: - it doesn't happen inside kernel, because "top" shows the load as "user", not as "system" - I am able to determine where it happens, but not why :-(
in r128_video.c, there is a short function called R128CopyData422, containing
rougly
if (!dmacopyworx) {
memcpy the sucker
}
Ok, here comes the funny part. If I put a
usleep (1);
BEFORE the "if", X load sinks by about 20% during video playing, BOTH when
using dri (25->5) or not using DRI (50->30)
When I put it AFTER the if, the load doesn't change (25 with dri, 50 without).
I also tried rewriting the R128PutImage so that every second call is returned
without doing anthing, this sank the X load dramatically as well, but I think
this was expected anyway.
Now gurus, show what you can :-)
Mit freundlichen Grüßen
Peter Surda (Shurdeek) <[EMAIL PROTECTED]>, ICQ 10236103, +436505122023
--
My mind is like a steel trap - rusty and illegal in 37 states.
msg02977/pgp00000.pgp
Description: PGP signature
