From owner-cvs-sys Mon Dec 30 17:49:59 1996 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.4/8.8.4) id RAA05870 for cvs-sys-outgoing; Mon, 30 Dec 1996 17:49:59 -0800 (PST) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.8.4/8.8.4) with ESMTP id RAA05829; Mon, 30 Dec 1996 17:49:14 -0800 (PST) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.3/8.6.9) id LAA14486; Tue, 31 Dec 1996 11:10:51 +1100 Date: Tue, 31 Dec 1996 11:10:51 +1100 From: Bruce Evans Message-Id: <199612310010.LAA14486@godzilla.zeta.org.au> To: cvs-all@freefall.freebsd.org, CVS-committers@freefall.freebsd.org, cvs-sys@freefall.freebsd.org, peter@freefall.freebsd.org Subject: Re: cvs commit: src/sys/sys time.h Sender: owner-cvs-sys@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > Modified: sys/sys time.h > Log: > Add NetBSD/OpenBSD compatable timeradd()/timersub() user-space macros. > > These are deliberately not visible to the kernel since we have timevaladd() > and timevalsub() functions there. > > Obtained from: NetBSD/OpenBSD Arrghh. I've already explained at length why we don't need these. NetBSD needs them for the kernel because they turned the functions into macros. This was probably a mistake because the functions are too large to be macros on many machines; in any case, they are not in an inner loop. Making them visible outside the kernel is more obviously wrong. It breaks any applications that have private versions of them with the same name, and timevals are a stupid format to use outside the kernel. The kernel uses them mainly because long longs and efficient floating point operations weren't available 10 years ago. Why add support for a bad method 5-10 years after it became bad? Bruce