Often when developing, it would be convenient to force OVS to either enable or disable cached timing so that a feature can be tested under both strategies.
Signed-off-by: Ethan Jackson <[email protected]> --- configure.ac | 1 + lib/timeval.h | 2 ++ m4/openvswitch.m4 | 14 ++++++++++++++ 3 files changed, 17 insertions(+) diff --git a/configure.ac b/configure.ac index ef513aa..2b20f40 100644 --- a/configure.ac +++ b/configure.ac @@ -75,6 +75,7 @@ OVS_CHECK_XENSERVER_VERSION OVS_CHECK_GROFF OVS_CHECK_BRCOMPAT OVS_CHECK_GNU_MAKE +OVS_CHECK_CACHE_TIME OVS_ENABLE_OPTION([-Wall]) OVS_ENABLE_OPTION([-Wno-sign-compare]) diff --git a/lib/timeval.h b/lib/timeval.h index cb5191c..0f7d15c 100644 --- a/lib/timeval.h +++ b/lib/timeval.h @@ -54,11 +54,13 @@ BUILD_ASSERT_DECL(TYPE_IS_SIGNED(time_t)); * * Also false on systems (e.g. ESX) that don't support setting up timers based * on a monotonically increasing clock. */ +#ifndef CACHE_TIME #if defined ESX || (defined __x86_64__ && defined LINUX_DATAPATH) #define CACHE_TIME 0 #else #define CACHE_TIME 1 #endif +#endif /* ifndef CACHE_TIME */ void time_disable_restart(void); void time_enable_restart(void); diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4 index dc99cd0..c5e2491 100644 --- a/m4/openvswitch.m4 +++ b/m4/openvswitch.m4 @@ -46,6 +46,20 @@ AC_DEFUN([OVS_CHECK_NDEBUG], [ndebug=false]) AM_CONDITIONAL([NDEBUG], [test x$ndebug = xtrue])]) +dnl Checks for --enable-cache-time and defines CACHE_TIME if it is specified. +AC_DEFUN([OVS_CHECK_CACHE_TIME], + [AC_ARG_ENABLE( + [cache-time], + [AC_HELP_STRING([--enable-cache-time], + [Enable time system call caching])], + [case "${enableval}" in + (yes) cache_time=1;; + (no) cache_time=0;; + (*) AC_MSG_ERROR([bad value ${enableval} for --enable-cache-time]) ;; + esac + AC_DEFINE_UNQUOTED([CACHE_TIME], [$cache_time], + [Define to 1 if cached timing is enabled.])])]) + dnl Checks for ESX. AC_DEFUN([OVS_CHECK_ESX], [AC_CHECK_HEADER([vmware.h], -- 1.7.12.3 _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
