Hello Thomas,

This is a known problem. If you want more information about it take a
look at this posting I did a while ago:
http://www.rtlinux.org/mailing_list/rtl.w5archive/0008/msg00239.html

One can't use use do_gettimeoday from real-time kernel modules because
it uses normal Linux locks to ensure exclusive access to xtime_lock.

Changing the Linux locks to real-time locks fixes the problem. This is
done in the LTT patch for RTAI and works great. It provides accurate
timing and enables hard-real-time tasks to access do_gettimeofday without
problems.

Cheers,

Karim

Thomas Folkers wrote:
> 
> Victor,
>   How come I can't get the time of day from the kernel? If I use
> do_gettimeofday(), eventually the system will hang. It may not happen
> right away, but it will hang. I'm trying to time external events and
> record the exact time an interrupt comes in and the only way to compare
> that time to other events and to other systems is to have the exact
> system time. The clock_gettime() routine returns something close to
> the real system clock time, but then proceeds to gain time at the rate of
> 35,000 nsecs/sec. That's probably due to a miss calibration in the cpu HZ
> value. I have looked over the rtl_time.c file and can see where you 'sync'
> the CLOCK_REALTIME to the results of a do_gettimeofday() call, but then
> there doesn't seem to be any other 'tweeks' to the time to keep it in
> sync. So, while the clock_gettime() produces a nice monotonic clock, it
> bear little resemblance to actual time.
>   So, how do I get the time of day from the kernel?
> 
> Thanks for you help,
> Tom
> 
> --
> 
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>     _/_/_/_/   _/_/    _/_/  _/_/_/_/_/  _/_/_/_/  Thomas W. Folkers
>    _/         _/ _/ _/  _/      _/      _/    _/  Telescope Operations Mgr.
>   _/_/_/_/   _/   _/   _/      _/      _/    _/  Sub-Millimeter Telescope
>         _/  _/        _/      _/      _/    _/  Kitt Peak 12M Radio Telescope
>        _/  _/        _/      _/      _/    _/  933 N. Cherry Ave. Rm. 486
> _/_/_/_/  _/        _/      _/      _/_/_/_/  Tucson, Arizona 85721
> -------------------------------------------  email: [EMAIL PROTECTED]
> ------------------------------------------  Voice: (520) 626-7837
> -- http://maisel.as.arizona.edu:8080/ ---  Fax:  621-5554  Pager: 446-0760
> -- http://kp12m.as.arizona.edu/      ---  Mobil: 909-1113  Home:  742-9279
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> -- [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/

-- 
===================================================
                 Karim Yaghmour
               [EMAIL PROTECTED]
      Embedded and Real-Time Linux Expert
===================================================


-- [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/

Reply via email to