Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #271: Correct interval time computations #277

Merged
merged 1 commit into from
Nov 7, 2019

Commits on Oct 23, 2019

  1. Fix #271: Correct interval time computations

    In VxWorks, the sigwait routine was not handling the actual time of
    the first interval, which basically meant that the start_time was
    elapsed twice before the first callback was generated.
    
    This exposed a few other small but significant details regarding
    how the intervals were dealt with across all operating systems.
    
    For VxWorks and RTEMS, where the timer interval is rounded up to
    an integer number of ticks, compute the actual interval time and
    write a debug message in case it is different than the intended
    value.  This makes it more obvious to the user that some
    application/bsp changes might be necessary to get accurate timing.
    
    For all operating systems, the "reset" flag needs to be sampled
    AFTER the sigwait returns, not before it.  This flag gets set when
    the OS_TimeBaseSet() API is called.
    
    Removes an unused POSIX delay routine that was intended to support
    use of clock_nanosleep() in place of the timer signal.  This mode
    was never usable because OS_TimerCreate always allocates a signal and
    fails if it cannot do so.  This code caused problems/incompatibilities
    for the sigwait model which IS used, so it needed to be removed.
    jphickey committed Oct 23, 2019
    Configuration menu
    Copy the full SHA
    1419f39 View commit details
    Browse the repository at this point in the history