Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/time.h
Show First 20 Lines • Show All 282 Lines • ▼ Show 20 Lines | |||||
static __inline sbintime_t | static __inline sbintime_t | ||||
tvtosbt(struct timeval _tv) | tvtosbt(struct timeval _tv) | ||||
{ | { | ||||
return (((sbintime_t)_tv.tv_sec << 32) + ustosbt(_tv.tv_usec)); | return (((sbintime_t)_tv.tv_sec << 32) + ustosbt(_tv.tv_usec)); | ||||
} | } | ||||
#endif /* __BSD_VISIBLE */ | #endif /* __BSD_VISIBLE */ | ||||
#ifdef _KERNEL | |||||
/* Operations on timespecs */ | /* Operations on timespecs */ | ||||
#define timespecclear(tvp) ((tvp)->tv_sec = (tvp)->tv_nsec = 0) | #define timespecclear(tvp) ((tvp)->tv_sec = (tvp)->tv_nsec = 0) | ||||
#define timespecisset(tvp) ((tvp)->tv_sec || (tvp)->tv_nsec) | #define timespecisset(tvp) ((tvp)->tv_sec || (tvp)->tv_nsec) | ||||
#define timespeccmp(tvp, uvp, cmp) \ | #define timespeccmp(tvp, uvp, cmp) \ | ||||
(((tvp)->tv_sec == (uvp)->tv_sec) ? \ | (((tvp)->tv_sec == (uvp)->tv_sec) ? \ | ||||
((tvp)->tv_nsec cmp (uvp)->tv_nsec) : \ | ((tvp)->tv_nsec cmp (uvp)->tv_nsec) : \ | ||||
((tvp)->tv_sec cmp (uvp)->tv_sec)) | ((tvp)->tv_sec cmp (uvp)->tv_sec)) | ||||
#define timespecadd(vvp, uvp) \ | |||||
#define timespecadd(tsp, usp, vsp) \ | |||||
do { \ | do { \ | ||||
(vvp)->tv_sec += (uvp)->tv_sec; \ | (vsp)->tv_sec = (tsp)->tv_sec + (usp)->tv_sec; \ | ||||
(vvp)->tv_nsec += (uvp)->tv_nsec; \ | (vsp)->tv_nsec = (tsp)->tv_nsec + (usp)->tv_nsec; \ | ||||
if ((vvp)->tv_nsec >= 1000000000) { \ | if ((vsp)->tv_nsec >= 1000000000L) { \ | ||||
(vvp)->tv_sec++; \ | (vsp)->tv_sec++; \ | ||||
(vvp)->tv_nsec -= 1000000000; \ | (vsp)->tv_nsec -= 1000000000L; \ | ||||
} \ | } \ | ||||
} while (0) | } while (0) | ||||
#define timespecsub(vvp, uvp) \ | #define timespecsub(tsp, usp, vsp) \ | ||||
do { \ | do { \ | ||||
(vvp)->tv_sec -= (uvp)->tv_sec; \ | (vsp)->tv_sec = (tsp)->tv_sec - (usp)->tv_sec; \ | ||||
(vvp)->tv_nsec -= (uvp)->tv_nsec; \ | (vsp)->tv_nsec = (tsp)->tv_nsec - (usp)->tv_nsec; \ | ||||
if ((vvp)->tv_nsec < 0) { \ | if ((vsp)->tv_nsec < 0) { \ | ||||
(vvp)->tv_sec--; \ | (vsp)->tv_sec--; \ | ||||
(vvp)->tv_nsec += 1000000000; \ | (vsp)->tv_nsec += 1000000000L; \ | ||||
} \ | } \ | ||||
} while (0) | } while (0) | ||||
#ifdef _KERNEL | |||||
/* Operations on timevals. */ | /* Operations on timevals. */ | ||||
#define timevalclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0) | #define timevalclear(tvp) ((tvp)->tv_sec = (tvp)->tv_usec = 0) | ||||
#define timevalisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) | #define timevalisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec) | ||||
#define timevalcmp(tvp, uvp, cmp) \ | #define timevalcmp(tvp, uvp, cmp) \ | ||||
(((tvp)->tv_sec == (uvp)->tv_sec) ? \ | (((tvp)->tv_sec == (uvp)->tv_sec) ? \ | ||||
((tvp)->tv_usec cmp (uvp)->tv_usec) : \ | ((tvp)->tv_usec cmp (uvp)->tv_usec) : \ | ||||
▲ Show 20 Lines • Show All 223 Lines • Show Last 20 Lines |