I think the solution is clock_gettime(GPOS_CLOCK ...) and we'll get it working
soon - unless someone else does it first.

On Mon, May 07, 2001 at 03:16:03PM -0700, [EMAIL PROTECTED] wrote:
> 
> Unless I am missing something, do_gettimeofday() sounds like a big, bloated
> Linux system call to me.  Shouldn't be in real time to start with.  Why not
> just get the time of day once in the init_module() (which is not real time
> mode) and synchronize with a counter that you update constantly in a
> periodic thread that you create at whatever rate you like.  When the
> interrupt comes in, the ISR just looks at the value of the counter and
> knows what time it is by differencing with the original time.  The rest is
> just reformatting for printout.  I apologize if I answered the wrong
> question.
> 
> Oliver
> 
> 
> 
> 
> 
> Karim Yaghmour <[EMAIL PROTECTED]>@fsmlabs.com on 05/03/2001 11:04:09 AM
> 
> Please respond to [EMAIL PROTECTED]
> 
> Sent by:  [EMAIL PROTECTED]
> 
> 
> To:   [EMAIL PROTECTED]
> cc:   [EMAIL PROTECTED], [EMAIL PROTECTED]
> Subject:  Re: [rtl] do_gettimeofday().
> 
> 
> 
> 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/
> 
> 
> -- [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/

Reply via email to