Hal Murray <[email protected]>:
> 
> [email protected] said:
> > (1) A way to hoist some code out of the time-setting critical path in
> >     step_systime() 
> 
> There is nothing critical in there - unless you using a different meaning 
> than I'm thinking of.
> 
> That code is essentially never used.
> 
> You might have found a way to make it easier to read and understand.  That 
> would be good.

After line 372:

        /* ---> time-critical path starts ---> */

        /* get the current time as l_fp (without fuzz) and as struct timespec */
        get_ostime(&timets);
        fp_sys = tspec_stamp_to_lfp(timets);

        /* get the target time as l_fp */
        fp_sys += fp_ofs;

        /* unfold the new system time */
        timets = lfp_stamp_to_tspec(fp_sys, &pivot);

        /* now set new system time */
        if (settime(&timets) != 0) {
                msyslog(LOG_ERR, "step_systime: %m");
                return false;
        }

        /* <--- time-critical path ended with call to the settime hook <--- */

        /* only used for utmp/wtmpx time-step recording */
        tslast.tv_sec = timets.tv_sec;
        tslast.tv_nsec = timets.tv_nsec;

The last two lines, of instrumentation, used to be inside the critical
section.
-- 
                <a href="http://www.catb.org/~esr/";>Eric S. Raymond</a>
_______________________________________________
devel mailing list
[email protected]
http://lists.ntpsec.org/mailman/listinfo/devel

Reply via email to