Hello Paolo,
As I stated before, RTAI __DOES NOT__ break jiffies.
It does though however pend too many of them. I can prove this even
though I can't explain it (for now). This, though, does not matter
to Linux since he'll be happy as long as jiffies go forward.
You are correct about the 8254 and I had stated it in my email
that the problem with do_gettimeofday is due to the cutoff of Linux
from the 8254. This is precisely what my fix does, it takes Linux's
dependency away from the 8254 for do_gettimeofday.
You are also correct by stating that RTAI keeps Linux happy. But I
would add that it keeps Linux happy 'most of the time'. That is,
people have complained about the fact that do_gettimeofday returns
inconsistent times.
To sum up, RTAI does not break Linux. Though it does break part of
it's time information functions, in particular do_gettimeofday. But
this can be and has been fixed, as my previous posting has shown.
Best regards.
Karim
Paolo Mantegazza wrote:
>
> Hi,
>
> RTAI guarrantees that jiffies are correctly accounted by Linux on the
> average:
>
> if (rt_times.tick_time >= rt_times.linux_time) {
> rt_times.linux_time += rt_times.linux_tick;
> rt_pend_linux_irq(0);
> }
>
> and from the above I cannot see any excess pending pending to Linux but
> at linux_tick (11932) rate of HZ. In fact RTAI even helps in recovering
> jiffies.
>
> Your problem with get time of day is likely due to the cutoff of the
> Linux reading the 8254 to get subjiffies times.
>
> It is done by design since there is no chance anyhow of getting anything
> meaningful from it once RTAI has grabbed the 8254. The ticking can be
> whatever and so Linux must be happy with only its HZ resolution. Even if
> it is not up to date the RTAI patch concepts are clearly explained in
> README.RTHAL.
>
> Within the above constraint I can bet that RTAI keeps its time very
> well, while constraining LINUX to stay happy with just HZ resolution.
> Many of the available examples show it.
>
> Ciao, Paolo.
--
===================================================
Karim Yaghmour
[EMAIL PROTECTED]
Operating System Consultant
(Linux kernel, real-time and distributed systems)
===================================================
-- [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/