Date: Wed, 21 Jul 2004 23:37:40 +1000 (EST) From: Bruce Evans <bde@zeta.org.au> To: Xin LI <delphij@frontfree.net> Cc: current@freebsd.org Subject: Re: Any idea why timespec* is _KERNEL stuff only? Message-ID: <20040721232310.Y2587@epsplex.bde.org> In-Reply-To: <20040721113211.GA1899@frontfree.net> References: <20040721113211.GA1899@frontfree.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 21 Jul 2004, Xin LI wrote: > Hi, Poul-Henning, > > It seems that rev. 1.23 of sys/sys/time.h has constrained timespec* macros > to be _KERNEL (KERNEL in the old days) only. Is this intended? (NetBSD and Yes, this is intended. The timeval and timespec interfaces are optimized for handling times in code that can't use 64-bit integers or floating point (mainly in 20 year old kernels). New interfaces to manipulate them should not be added 20 years after the interfaces should have been deprecated. > OpenBSD don't expect _KERNEL for these macros, e.g. timespeccmp, and I > personally think that these macros will be better for more generic use, NetBSD and OpenBSD originally only had timeval*(), and FreeBSD unfortunately had to add them to be compatible. timespec*() seem to be even less needed in userland than timeval*(), since no ports are broken by not having them. > as timespec structure is not _KERNEL protected :-) The timespec struct is POSIX standard. POSIX has the correct number of functions for operating on timespec structs (none). Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040721232310.Y2587>