Skip to content

Commit

Permalink
timeval: Optionally enable cached timing at configure time.
Browse files Browse the repository at this point in the history
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]>
  • Loading branch information
ejj committed Oct 17, 2012
1 parent 2e22e1c commit 3d7cab5
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 0 deletions.
1 change: 1 addition & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -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])
Expand Down
2 changes: 2 additions & 0 deletions lib/timeval.h
Original file line number Diff line number Diff line change
Expand Up @@ -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);
Expand Down
16 changes: 16 additions & 0 deletions m4/openvswitch.m4
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,22 @@ 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],
[Override time caching default (for testing only)])],
[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 to enable time caching, to 0 to disable time caching, or
leave undefined to use the default (as one should
ordinarily do).])])])

dnl Checks for ESX.
AC_DEFUN([OVS_CHECK_ESX],
[AC_CHECK_HEADER([vmware.h],
Expand Down

0 comments on commit 3d7cab5

Please sign in to comment.