WPA: Allow CLOCK_BOOTTIME and CLOCK_MONOTONIC to #define the same

Historically, these have been differnet values, and only one was defined
or they were defined as different values. Now that they are about to be
the same value, add #ifdef to cope.

Sponsored by:		Netflix
Reviewed by:		olce, val_packett.cool, adrian
Differential Revision:	https://reviews.freebsd.org/D45418
This commit is contained in:
Warner Losh 2024-05-31 08:44:55 -06:00
parent aca928a50a
commit 676041c41b

View File

@ -72,7 +72,6 @@ int os_get_time(struct os_time *t)
return res;
}
int os_get_reltime(struct os_reltime *t)
{
#ifndef __MACH__
@ -97,15 +96,21 @@ int os_get_reltime(struct os_reltime *t)
return 0;
}
switch (clock_id) {
#ifdef CLOCK_BOOTTIME
#if defined(CLOCK_BOOTTIME)
case CLOCK_BOOTTIME:
clock_id = CLOCK_MONOTONIC;
break;
#endif
#ifdef CLOCK_MONOTONIC
#if defined(CLOCK_MONOTONIC)
/*
* FreeBSD has both BOOTTIME and MONOTONIC defined to the same value, since they
* mean the same thing. FreeBSD 14.1 and ealier don't, so need this case.
*/
#if !(defined(CLOCK_BOOTTIME) && CLOCK_BOOTTIME == CLOCK_MONOTONIC)
case CLOCK_MONOTONIC:
clock_id = CLOCK_REALTIME;
break;
#endif
#endif
case CLOCK_REALTIME:
return -1;