From nobody Sat Jun 01 13:31:56 2024 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Vs19s29WSz5MvBQ; Sat, 01 Jun 2024 13:32:01 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from omta001.cacentral1.a.cloudfilter.net (omta001.cacentral1.a.cloudfilter.net [3.97.99.32]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Vs19r5cc1z49ym; Sat, 1 Jun 2024 13:32:00 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Authentication-Results: mx1.freebsd.org; none Received: from shw-obgw-4002a.ext.cloudfilter.net ([10.228.9.250]) by cmsmtp with ESMTPS id D5tysRr3I2Ui5DOpzsDzmh; Sat, 01 Jun 2024 13:31:59 +0000 Received: from spqr.komquats.com ([70.66.152.170]) by cmsmtp with ESMTPSA id DOpxsYXeI9Cr4DOpysXEGe; Sat, 01 Jun 2024 13:31:59 +0000 X-Auth-User: cschuber X-Authority-Analysis: v=2.4 cv=etl8zZpX c=1 sm=1 tr=0 ts=665b22cf a=y8EK/9tc/U6QY+pUhnbtgQ==:117 a=y8EK/9tc/U6QY+pUhnbtgQ==:17 a=kj9zAlcOel0A:10 a=T1WGqf2p2xoA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=pQs5aej7AAAA:8 a=-wuKhKTYAAAA:8 a=wFNwba7RAAAA:8 a=SLG1KRGDAAAA:8 a=p1MGncNJEa64hhLhiKIA:9 a=m0aHWRZkbZ-AXnUG:21 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 a=prepyofVby0hjpoiPUJH:22 a=-TBaU1e9WpdkKBzYXnwo:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTP id C022D1361; Sat, 01 Jun 2024 06:31:56 -0700 (PDT) Received: by slippy.cwsent.com (Postfix, from userid 1000) id 8EB804B0; Sat, 01 Jun 2024 06:31:56 -0700 (PDT) X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.8+dev Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Warner Losh cc: Nuno Teixeira , Warner Losh , src-committers , "" , "" Subject: Re: git: 108de784513d - main - Redefine CLOCK_BOOTTIME to alias CLOCK_MONOTONIC, not CLOCK_UPTIME In-reply-to: References: <202405311447.44VEl1G1078199@gitrepo.freebsd.org> Comments: In-reply-to Warner Losh message dated "Sat, 01 Jun 2024 08:31:59 -0400." List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sat, 01 Jun 2024 06:31:56 -0700 Message-Id: <20240601133156.8EB804B0@slippy.cwsent.com> X-CMAE-Envelope: MS4xfDLxaB6lVPbLLhLD5ImcddkVkbztL6LI5EnUYRcq1Xi0d4TLQ6rYAElMDVhp2pA0alp0eLKj8MJuxaYelz+gEGXKDOjxsh+74/Nr+0T4HkuLcVQuFDVA TJ5JgtbKHbCwWbemTsAnNzQtZDLJMjGVr6zkl26yAbrZSW1rzVwlTtXdI63U0WroO/PcWHWgz8EqQWwhqal5SeNPGdh238BT1Vhk29uDnpiCHVf5b2hSewHN TOmcVYErV9Vsl7b0sUsAS33m6kYyhWs8Ac6spVudpyZ52x6nhNxLCCPJTMRyfDHLiv7XLtG5s6uvmgQ1u9SGB2zdPYqVKz4uuVoCSWHT9P7KzhyB3rHn67ql fKxNsNVrsOTy8rCScXQLUvqp6cM1MQ== X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:16509, ipnet:3.96.0.0/15, country:US] X-Rspamd-Queue-Id: 4Vs19r5cc1z49ym In message , Warner Losh writes: > --0000000000000d72080619d34a39 > Content-Type: text/plain; charset="UTF-8" > Content-Transfer-Encoding: quoted-printable > > On Sat, Jun 1, 2024, 4:37=E2=80=AFAM Nuno Teixeira wr= > ote: > > > Hello, > > > > Having issues building graphics/mesa-dri: > > > > ../src/intel/common/xe/intel_gem.c:72:9: error: duplicate case value '4' > > 72 | case CLOCK_BOOTTIME: > > | ^ > > /usr/include/sys/_clock_id.h:81:25: note: expanded from macro > > 'CLOCK_BOOTTIME' > > 81 | #define CLOCK_BOOTTIME CLOCK_MONOTONIC > > | ^ > > /usr/include/sys/_clock_id.h:56:26: note: expanded from macro > > 'CLOCK_MONOTONIC' > > 56 | #define CLOCK_MONOTONIC 4 > > | ^ > > ../src/intel/common/xe/intel_gem.c:66:9: note: previous case defined here > > 66 | case CLOCK_MONOTONIC: > > | ^ > > /usr/include/sys/_clock_id.h:56:26: note: expanded from macro > > 'CLOCK_MONOTONIC' > > 56 | #define CLOCK_MONOTONIC 4 > > | ^ > > 1 error generated. > > > > Mesa needs to be updated to not assume these are distinct values. You should be able to resolve this with, --- src/intel/common/xe/intel_gem.c.orig 2024-05-22 09:48:39.000000000 -0700 +++ src/intel/common/xe/intel_gem.c 2024-06-01 06:28:22.268439000 -0700 @@ -69,8 +69,10 @@ #endif case CLOCK_REALTIME: #ifdef CLOCK_BOOTTIME +#if CLOCK_BOOTTIME != CLOCK_MONOTONIC case CLOCK_BOOTTIME: #endif +#endif #ifdef CLOCK_TAI case CLOCK_TAI: #endif -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org e^(i*pi)+1=0 > > Warner > > > > Thanks > > > > Warner Losh escreveu (sexta, 31/05/2024 =C3=A0(s) 15:47= > ): > > > >> The branch main has been updated by imp: > >> > >> URL: > >> https://cgit.FreeBSD.org/src/commit/?id=3D108de784513d87bbe850e7b003a73e= > 26b5b54caa > >> > >> commit 108de784513d87bbe850e7b003a73e26b5b54caa > >> Author: Val Packett > >> AuthorDate: 2024-05-31 14:45:02 +0000 > >> Commit: Warner Losh > >> CommitDate: 2024-05-31 14:45:02 +0000 > >> > >> Redefine CLOCK_BOOTTIME to alias CLOCK_MONOTONIC, not CLOCK_UPTIME > >> > >> The suspend-awareness situation with monotonic clocks across platfor= > ms > >> is kind of a mess, let's try not making it worse. > >> > >> On Linux, CLOCK_MONOTONIC does NOT count suspended time, and > >> CLOCK_BOOTTIME was introduced to INCLUDE suspended time. > >> > >> On OpenBSD, CLOCK_MONOTONIC DOES count suspended time, and > >> CLOCK_UPTIME > >> was introduced to EXCLUDE suspended time. > >> > >> On macOS, it's the same as OpenBSD, but with CLOCK_UPTIME_RAW. > >> > >> Right now, we do not have a monotonic clock that counts suspended > >> time. > >> We have CLOCK_UPTIME as a distinct ID alias, and CLOCK_BOOTTIME as a > >> preprocessor alias, both being effectively `CLOCK_MONOTONIC` for now= > . > >> > >> When we introduce a suspend-aware clock in the future, it would make= > a > >> lot more sense to do it the OpenBSD/macOS way, i.e. to make > >> CLOCK_MONOTONIC include suspended time and make CLOCK_UPTIME exclude > >> it, > >> because that's what the name CLOCK_UPTIME implies: a deviation from > >> the > >> default intended for the uptime command to allow it to only show the > >> time the system was actually up and not suspended. > >> > >> Let's change the define right now to make sure software using the > >> define > >> would not end up using the ID of the wrong clock in the future, and > >> fix > >> the IDs in the Linux compat code to match the expected changes too. > >> > >> See https://bugzilla.mozilla.org/show_bug.cgi?id=3D1824084 > >> for more discussion. > >> > >> Fixes: 155f15118a77 ("clock_gettime: Add Linux aliases for > >> CLOCK_*") > >> Fixes: 25ada637362d ("Map Linux CLOCK_BOOTTIME to native > >> CLOCK_UPTIME.") > >> Sponsored by: https://www.patreon.com/valpackett > >> Reviewed by: kib, imp > >> Differential Revision: https://reviews.freebsd.org/D39270 > >> --- > >> sys/compat/linux/linux_time.c | 6 +++--- > >> sys/sys/_clock_id.h | 2 +- > >> 2 files changed, 4 insertions(+), 4 deletions(-) > >> > >> diff --git a/sys/compat/linux/linux_time.c b/sys/compat/linux/linux_time= > .c > >> index e9e5cf075210..f4dd26dd3d2a 100644 > >> --- a/sys/compat/linux/linux_time.c > >> +++ b/sys/compat/linux/linux_time.c > >> @@ -287,7 +287,7 @@ linux_to_native_clockid(clockid_t *n, clockid_t l) > >> *n =3D CLOCK_REALTIME; > >> break; > >> case LINUX_CLOCK_MONOTONIC: > >> - *n =3D CLOCK_MONOTONIC; > >> + *n =3D CLOCK_UPTIME; > >> break; > >> case LINUX_CLOCK_PROCESS_CPUTIME_ID: > >> *n =3D CLOCK_PROCESS_CPUTIME_ID; > >> @@ -300,10 +300,10 @@ linux_to_native_clockid(clockid_t *n, clockid_t l) > >> break; > >> case LINUX_CLOCK_MONOTONIC_COARSE: > >> case LINUX_CLOCK_MONOTONIC_RAW: > >> - *n =3D CLOCK_MONOTONIC_FAST; > >> + *n =3D CLOCK_UPTIME_FAST; > >> break; > >> case LINUX_CLOCK_BOOTTIME: > >> - *n =3D CLOCK_UPTIME; > >> + *n =3D CLOCK_MONOTONIC; > >> break; > >> case LINUX_CLOCK_REALTIME_ALARM: > >> case LINUX_CLOCK_BOOTTIME_ALARM: > >> diff --git a/sys/sys/_clock_id.h b/sys/sys/_clock_id.h > >> index 47a551428dc3..728346a0f0ab 100644 > >> --- a/sys/sys/_clock_id.h > >> +++ b/sys/sys/_clock_id.h > >> @@ -78,7 +78,7 @@ > >> * Linux compatible names. > >> */ > >> #if __BSD_VISIBLE > >> -#define CLOCK_BOOTTIME CLOCK_UPTIME > >> +#define CLOCK_BOOTTIME CLOCK_MONOTONIC > >> #define CLOCK_REALTIME_COARSE CLOCK_REALTIME_FAST > >> #define CLOCK_MONOTONIC_COARSE CLOCK_MONOTONIC_FAST > >> #endif > >> > >> > > > > -- > > Nuno Teixeira > > FreeBSD UNIX: Web: https://FreeBSD.org > > > > --0000000000000d72080619d34a39 > Content-Type: text/html; charset="UTF-8" > Content-Transfer-Encoding: quoted-printable > >


= >
On Sat, Jun 1, 2024, 4:37=E2=80=AFAM = > Nuno Teixeira <= > eduardo@freebsd.org> wrote:
e" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">= >
Hello,

Having issues buildin= > g graphics/mesa-dri:

../src/intel/common/xe/intel_= > gem.c:72:9: error: duplicate case value '4'
=C2=A0 =C2=A072 | = > =C2=A0 =C2=A0case CLOCK_BOOTTIME:
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 = > =C2=A0 =C2=A0 ^
/usr/include/sys/_clock_id.h:81:25: note: expanded from = > macro 'CLOCK_BOOTTIME'
=C2=A0 =C2=A081 | #define CLOCK_BOOTTIME = > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0CLOCK_MONOTONIC
=C2=A0 =C2=A0 =C2=A0 |= > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= > =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ^
/usr/include/sys/_clock_id.h:56= > :26: note: expanded from macro 'CLOCK_MONOTONIC'
=C2=A0 =C2=A056= > | #define CLOCK_MONOTONIC =C2=A0 =C2=A0 =C2=A0 =C2=A0 4
=C2=A0 =C2=A0 = > =C2=A0 | =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= > =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ^
../src/intel/common/xe/i= > ntel_gem.c:66:9: note: previous case defined here
=C2=A0 =C2=A066 | =C2= > =A0 =C2=A0case CLOCK_MONOTONIC:
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2= > =A0 =C2=A0 ^
/usr/include/sys/_clock_id.h:56:26: note: expanded from mac= > ro 'CLOCK_MONOTONIC'
=C2=A0 =C2=A056 | #define CLOCK_MONOTONIC = > =C2=A0 =C2=A0 =C2=A0 =C2=A0 4
=C2=A0 =C2=A0 =C2=A0 | =C2=A0 =C2=A0 =C2= > =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = > =C2=A0 =C2=A0 =C2=A0 ^
1 error generated.
= >

te">
Mesa needs to be updated to not assume these are distinct values.<= > /div>

Warner
=C2=A0
gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-= > left:1ex">
Thanks
all">

=3D"ltr" class=3D"gmail_attr">Warner Losh < .org" rel=3D"noreferrer" target=3D"_blank">imp@freebsd.org> escreveu= > (sexta, 31/05/2024 =C3=A0(s) 15:47):
uote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,2= > 04);padding-left:1ex">The branch main has been updated by imp:
>
> URL: 850e7b003a73e26b5b54caa" rel=3D"noreferrer noreferrer" target=3D"_blank">ht= > tps://cgit.FreeBSD.org/src/commit/?id=3D108de784513d87bbe850e7b003a73e26b5b= > 54caa
>
> commit 108de784513d87bbe850e7b003a73e26b5b54caa
> Author:=C2=A0 =C2=A0 =C2=A0Val Packett <val@packett.cool>
> AuthorDate: 2024-05-31 14:45:02 +0000
> Commit:=C2=A0 =C2=A0 =C2=A0Warner Losh <imp@FreeBSD.org>
> CommitDate: 2024-05-31 14:45:02 +0000
>
> =C2=A0 =C2=A0 Redefine CLOCK_BOOTTIME to alias CLOCK_MONOTONIC, not CLOCK_U= > PTIME
>
> =C2=A0 =C2=A0 The suspend-awareness situation with monotonic clocks across = > platforms
> =C2=A0 =C2=A0 is kind of a mess, let's try not making it worse.
>
> =C2=A0 =C2=A0 On Linux, CLOCK_MONOTONIC does NOT count suspended time, and<= > br> > =C2=A0 =C2=A0 CLOCK_BOOTTIME was introduced to INCLUDE suspended time.
>
> =C2=A0 =C2=A0 On OpenBSD, CLOCK_MONOTONIC DOES count suspended time, and CL= > OCK_UPTIME
> =C2=A0 =C2=A0 was introduced to EXCLUDE suspended time.
>
> =C2=A0 =C2=A0 On macOS, it's the same as OpenBSD, but with CLOCK_UPTIME= > _RAW.
>
> =C2=A0 =C2=A0 Right now, we do not have a monotonic clock that counts suspe= > nded time.
> =C2=A0 =C2=A0 We have CLOCK_UPTIME as a distinct ID alias, and CLOCK_BOOTTI= > ME as a
> =C2=A0 =C2=A0 preprocessor alias, both being effectively `CLOCK_MONOTONIC` = > for now.
>
> =C2=A0 =C2=A0 When we introduce a suspend-aware clock in the future, it wou= > ld make a
> =C2=A0 =C2=A0 lot more sense to do it the OpenBSD/macOS way, i.e. to make r> > =C2=A0 =C2=A0 CLOCK_MONOTONIC include suspended time and make CLOCK_UPTIME = > exclude it,
> =C2=A0 =C2=A0 because that's what the name CLOCK_UPTIME implies: a devi= > ation from the
> =C2=A0 =C2=A0 default intended for the uptime command to allow it to only s= > how the
> =C2=A0 =C2=A0 time the system was actually up and not suspended.
>
> =C2=A0 =C2=A0 Let's change the define right now to make sure software u= > sing the define
> =C2=A0 =C2=A0 would not end up using the ID of the wrong clock in the futur= > e, and fix
> =C2=A0 =C2=A0 the IDs in the Linux compat code to match the expected change= > s too.
>
> =C2=A0 =C2=A0 See =3D1824084" rel=3D"noreferrer noreferrer" target=3D"_blank">https://bugzill= > a.mozilla.org/show_bug.cgi?id=3D1824084
> =C2=A0 =C2=A0 for more discussion.
>
> =C2=A0 =C2=A0 Fixes:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 155f15118a77 ("= > clock_gettime: Add Linux aliases for CLOCK_*")
> =C2=A0 =C2=A0 Fixes:=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 25ada637362d ("= > Map Linux CLOCK_BOOTTIME to native CLOCK_UPTIME.")
> =C2=A0 =C2=A0 Sponsored by:=C2=A0 =C2=A0 valpackett" rel=3D"noreferrer noreferrer" target=3D"_blank">https://www.pat= > reon.com/valpackett
> =C2=A0 =C2=A0 Reviewed by:=C2=A0 =C2=A0 kib, imp
> =C2=A0 =C2=A0 Differential Revision:=C2=A0 sd.org/D39270" rel=3D"noreferrer noreferrer" target=3D"_blank">https://revi= > ews.freebsd.org/D39270
> ---
> =C2=A0sys/compat/linux/linux_time.c | 6 +++---
> =C2=A0sys/sys/_clock_id.h=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0| 2 +- > > =C2=A02 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/sys/compat/linux/linux_time.c b/sys/compat/linux/linux_time.c<= > br> > index e9e5cf075210..f4dd26dd3d2a 100644
> --- a/sys/compat/linux/linux_time.c
> +++ b/sys/compat/linux/linux_time.c
> @@ -287,7 +287,7 @@ linux_to_native_clockid(clockid_t *n, clockid_t l)
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *n =3D CLOCK_REALTI= > ME;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_MONOTONIC:
> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*n =3D CLOCK_MONOTO= > NIC;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*n =3D CLOCK_UPTIME= > ;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_PROCESS_CPUTIME_ID:
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 *n =3D CLOCK_PROCES= > S_CPUTIME_ID;
> @@ -300,10 +300,10 @@ linux_to_native_clockid(clockid_t *n, clockid_t l) > > =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_MONOTONIC_COARSE:
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_MONOTONIC_RAW:
> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*n =3D CLOCK_MONOTO= > NIC_FAST;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*n =3D CLOCK_UPTIME= > _FAST;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_BOOTTIME:
> -=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*n =3D CLOCK_UPTIME= > ;
> +=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0*n =3D CLOCK_MONOTO= > NIC;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 break;
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_REALTIME_ALARM:
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 case LINUX_CLOCK_BOOTTIME_ALARM:
> diff --git a/sys/sys/_clock_id.h b/sys/sys/_clock_id.h
> index 47a551428dc3..728346a0f0ab 100644
> --- a/sys/sys/_clock_id.h
> +++ b/sys/sys/_clock_id.h
> @@ -78,7 +78,7 @@
> =C2=A0 * Linux compatible names.
> =C2=A0 */
> =C2=A0#if __BSD_VISIBLE
> -#define=C2=A0 =C2=A0 =C2=A0 =C2=A0 CLOCK_BOOTTIME=C2=A0 =C2=A0 =C2=A0 =C2= > =A0 =C2=A0 CLOCK_UPTIME
> +#define=C2=A0 =C2=A0 =C2=A0 =C2=A0 CLOCK_BOOTTIME=C2=A0 =C2=A0 =C2=A0 =C2= > =A0 =C2=A0 CLOCK_MONOTONIC
> =C2=A0#define=C2=A0 =C2=A0 =C2=A0 =C2=A0 CLOCK_REALTIME_COARSE=C2=A0 =C2=A0= > CLOCK_REALTIME_FAST
> =C2=A0#define=C2=A0 =C2=A0 =C2=A0 =C2=A0 CLOCK_MONOTONIC_COARSE=C2=A0 CLOCK= > _MONOTONIC_FAST
> =C2=A0#endif
>
>


fix">--
tr">
Nuno Teixeira
color=3D"#888888"> > FreeBSD UNIX:=C2=A0 <eduardo@FreeBSD.org>=C2=A0 =C2=A0Web:=C2=A0 ref=3D"https://FreeBSD.org" rel=3D"noreferrer noreferrer" target=3D"_blank"= > >https://FreeBSD.org
>
>
> > --0000000000000d72080619d34a39-- >