[Patch] C1X threading support

Warner Losh imp at bsdimp.com
Thu Dec 22 17:52:20 UTC 2011


On Dec 22, 2011, at 9:57 AM, Niall Douglas wrote:
> Instead of people repeatedly whinging about the system clock moving - 
> and yes, people on standards committees are aware that system clocks 
> can move, as they are that different cores can have different system 
> clocks - I would be asking how does your scheduler cope with the 
> clock moving, and how should clock syncs interact with userland? Be 
> engineers instead of children. Ask how to solve the problem instead 
> of complaining about split milk. Be glad you're implementing this on 
> a POSIX system and not a non-POSIX system. Be glad there aren't a 
> million lines of new code being needed to achieve compliance.

Elapsed time since boot is typically used in cases where you need a stable, monotonically increasing time base.  Changing the system time then becomes just a change to the boot time, but not the time elapsed since boot.  A pure monotonic time base is safe to specify absolute time in.  One that isn't monotonic, such as UTC or POSIX time_t, is unsafe.  Using it is akin to specifying a mutex system that has known races that cannot be fixed in it.

I'm sorry if my harsh remarks hurt your feelings, but the new APIs do not learn from the well known mistakes of the past decade, so they disappoint me.

Warner



More information about the freebsd-threads mailing list