OK here we go again :-)
All the PCI options have some influence on the latency , but it still
jumps to 15 mili seconds
with one enter press in a console window. (also tried a failsafe sesion
with only one Xterminal, same result)
After some more source code reading i found that acceleration options
can beselectively turned off.
The option that makes the latency act normal (10-30 usec) is
Option "XaaNoSolidFillRect" "False"
which prevents the use of acceleration for solid rectangle drawing.
(with those options i found
X being instable (those options are flagged as debug options, not normal
config options).
Maybe other accelerations cause problems too , but they are just not
used by my setup.
I have not enough knowledge nor time to debug the XFree driver, i will
wait until i have my new video card
and see if the problem goes away, if it doesn't i know where to look
first :-)
If it does i gladly donate my old video-card to who ever wants to take a
look at it.
- Erwin
John Regehr wrote:
>
> Aha, a smoking gun!
>
> > #define WAITFIFO(n) if(ps3v->NoPCIRetry) \
> > while(((INREG(SUBSYS_STAT_REG) >> 8) & 0x1f) < n){}
> >
> > So the NoPCIRetry option disables/enables the wait , if i understand
> > correct.
>
> Right.
>
> This macro loops until there are at least n free entries in the FIFO,
> but only when NoPCIRetry is set.
>
> > Altough at the moment i have a bit of the problem understanding it.
> > when NoPCIRetry is true it does the wait for FIFO space, and else the
> > PCI
> > chipset does the retry by itself ??
>
> I remember that the meaning of "retry" is confusing in this case. But
> it doesn't really matter since it's clear that this loop has to run, to
> avoid hanging the machine on a full FIFO.
>
> Nice work.
>
> The next step is to try to convince every video driver writer to have
> the equivalent of this loop in their driver enabled by default. It's
> not just a RTL issue - these hangups can hose lots of other time
> sensitive code as well.
>
> John
>
> -- [rtl] ---
> To unsubscribe:
> echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
> echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
> ---
> For more information on Real-Time Linux see:
> http://www.rtlinux.org/rtlinux/
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/