Thanks for all the reviews. I applied your comments from patch 1 (in obvious fashion) and will soon push this to master.
On Tue, Jan 15, 2013 at 11:27:58AM -0800, Ethan Jackson wrote: > Acked-by: Ethan Jackson <et...@nicira.com> > > On Wed, Nov 7, 2012 at 10:48 AM, Ben Pfaff <b...@nicira.com> wrote: > > In general, with a few specific exceptions, ovs_assert is now preferred > > over assert, so this commit adds a check for that in the top-level > > Makefile. > > > > Signed-off-by: Ben Pfaff <b...@nicira.com> > > --- > > Makefile.am | 13 +++++++++++++ > > configure.ac | 1 + > > lib/vlog.c | 5 +++++ > > lib/worker.c | 5 +++++ > > 4 files changed, 24 insertions(+), 0 deletions(-) > > > > diff --git a/Makefile.am b/Makefile.am > > index b71ca1f..56fe3bb 100644 > > --- a/Makefile.am > > +++ b/Makefile.am > > @@ -180,6 +180,19 @@ rate-limit-check: > > fi > > .PHONY: rate-limit-check > > > > +# Check that assert.h is not used outside a whitelist of files. > > +ALL_LOCAL += check-assert-h-usage > > +check-assert-h-usage: > > + @if test -e $(srcdir)/.git && (git --version) >/dev/null 2>&1 && \ > > + (cd $(srcdir) && git --no-pager grep -l -E '[<]assert.h[>]') | \ > > + $(EGREP) -v '^lib/(sflow_receiver|vlog|worker).c$$|^tests/'; \ > > + then \ > > + echo "Files listed above unexpectedly #include > > <""assert.h"">."; \ > > + echo "Please use ovs_assert (from util.h) instead of assert."; \ > > + exit 1; \ > > + fi > > +.PHONY: check-assert-h-usage > > + > > if HAVE_GROFF > > ALL_LOCAL += manpage-check > > manpage-check: $(man_MANS) $(dist_man_MANS) $(noinst_man_MANS) > > diff --git a/configure.ac b/configure.ac > > index 32940a5..b85cf06 100644 > > --- a/configure.ac > > +++ b/configure.ac > > @@ -27,6 +27,7 @@ AC_PROG_CPP > > AC_PROG_RANLIB > > AC_PROG_MKDIR_P > > AC_PROG_FGREP > > +AC_PROG_EGREP > > > > AC_ARG_VAR([PERL], [path to Perl interpreter]) > > AC_PATH_PROG([PERL], perl, no) > > diff --git a/lib/vlog.c b/lib/vlog.c > > index 0bd9bd1..600c4b6 100644 > > --- a/lib/vlog.c > > +++ b/lib/vlog.c > > @@ -40,6 +40,11 @@ > > > > VLOG_DEFINE_THIS_MODULE(vlog); > > > > +/* ovs_assert() logs the assertion message, so using ovs_assert() in this > > + * source file could cause recursion. */ > > +#undef ovs_assert > > +#define ovs_assert use_assert_instead_of_ovs_assert_in_this_module > > + > > /* Name for each logging level. */ > > static const char *level_names[VLL_N_LEVELS] = { > > #define VLOG_LEVEL(NAME, SYSLOG_LEVEL) #NAME, > > diff --git a/lib/worker.c b/lib/worker.c > > index f2b896e..58ee85b 100644 > > --- a/lib/worker.c > > +++ b/lib/worker.c > > @@ -37,6 +37,11 @@ > > > > VLOG_DEFINE_THIS_MODULE(worker); > > > > +/* ovs_assert() logs the assertion message and logging sometimes goes > > through a > > + * worker, so using ovs_assert() in this source file could cause > > recursion. */ > > +#undef ovs_assert > > +#define ovs_assert use_assert_instead_of_ovs_assert_in_this_module > > + > > /* Header for an RPC request. */ > > struct worker_request { > > size_t request_len; /* Length of the payload in bytes. */ > > -- > > 1.7.2.5 > > > > _______________________________________________ > > dev mailing list > > dev@openvswitch.org > > http://openvswitch.org/mailman/listinfo/dev _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev