From ee4766827a6e19a97fe3cb423ea3220039240c4f Mon Sep 17 00:00:00 2001 From: behlendo Date: Mon, 10 Mar 2008 21:38:39 +0000 Subject: [PATCH] Remap gethrestime() with #define to new symbol and export that new symbol to avoid direct use of GPL only symbol. git-svn-id: https://outreach.scidac.gov/svn/spl/trunk@36 7e1ea52c-4ff2-0310-8f11-9dd32ca42a1c --- include/sys/time.h | 33 +++++++++++++++++---------------- modules/spl/Makefile.in | 1 + modules/spl/spl-time.c | 11 +++++++++++ 3 files changed, 29 insertions(+), 16 deletions(-) create mode 100644 modules/spl/spl-time.c diff --git a/include/sys/time.h b/include/sys/time.h index 6124a841d3..297e6ff749 100644 --- a/include/sys/time.h +++ b/include/sys/time.h @@ -15,14 +15,17 @@ extern "C" { #include extern unsigned long long monotonic_clock(void); +extern void __gethrestime(timestruc_t *); -#define TIME32_MAX INT32_MAX -#define TIME32_MIN INT32_MIN +#define gethrestime(ts) __gethrestime(ts) -#define SEC 1 -#define MILLISEC 1000 -#define MICROSEC 1000000 -#define NANOSEC 1000000000 +#define TIME32_MAX INT32_MAX +#define TIME32_MIN INT32_MIN + +#define SEC 1 +#define MILLISEC 1000 +#define MICROSEC 1000000 +#define NANOSEC 1000000000 #define hz \ ({ \ @@ -30,7 +33,14 @@ extern unsigned long long monotonic_clock(void); HZ; \ }) -#define gethrestime(ts) getnstimeofday((ts)) +static __inline__ time_t +gethrestime_sec(void) +{ + timestruc_t now; + + __gethrestime(&now); + return now.tv_sec; +} static __inline__ hrtime_t gethrtime(void) { @@ -44,15 +54,6 @@ gethrtime(void) { return monotonic_clock(); } -static __inline__ time_t -gethrestime_sec(void) -{ - timestruc_t now; - - gethrestime(&now); - return (now.tv_sec); -} - #ifdef __cplusplus } diff --git a/modules/spl/Makefile.in b/modules/spl/Makefile.in index 1d152e61b3..78ebdfa0cb 100644 --- a/modules/spl/Makefile.in +++ b/modules/spl/Makefile.in @@ -15,6 +15,7 @@ spl-objs += spl-taskq.o spl-objs += spl-rwlock.o spl-objs += spl-vnode.o spl-objs += spl-err.o +spl-objs += spl-time.o spl-objs += spl-generic.o splmodule := spl.ko diff --git a/modules/spl/spl-time.c b/modules/spl/spl-time.c new file mode 100644 index 0000000000..f0ec4c5a08 --- /dev/null +++ b/modules/spl/spl-time.c @@ -0,0 +1,11 @@ +#include +#include +#include "config.h" + +void +__gethrestime(timestruc_t *ts) +{ + getnstimeofday((struct timespec *)ts); +} + +EXPORT_SYMBOL(__gethrestime);