On Thu, Jul 10, 2014 at 2:37 PM, Ben Pfaff <b...@nicira.com> wrote: > On Thu, Jul 10, 2014 at 02:32:56PM -0700, Gurucharan Shetty wrote: >> On Wed, Jul 9, 2014 at 3:45 PM, Ben Pfaff <b...@nicira.com> wrote: >> > We noticed that the unit tests sometimes fail on XenServer inside glibc's >> > memory checker, in the free_check() function. It turns out that the >> > glibc memory checker in glibc 2.11 and earlier had an internal race that >> > caused false positives in multithreaded programs. >> > >> > This commit avoids the problem by disabling the glibc memory checker in >> > glibc 2.11 and earlier. >> > >> > VMware-BZ: #1267127 >> > Signed-off-by: Ben Pfaff <b...@nicira.com> Running rpmbuild in a loop usually used to cause me a hang within 10 minutes. I haven't had any problems for an hour now. So this atleast looks like an improvement.
Acked-by: Gurucharan Shetty <gshe...@nicira.com> >> > --- >> > tests/atlocal.in | 22 ++++++++++++++++++---- >> > 1 file changed, 18 insertions(+), 4 deletions(-) >> > >> > diff --git a/tests/atlocal.in b/tests/atlocal.in >> > index 2f816fc..825d289 100644 >> > --- a/tests/atlocal.in >> > +++ b/tests/atlocal.in >> > @@ -52,10 +52,24 @@ fi >> > # Enable malloc debugging features. >> > case `uname` in >> > Linux) >> > - MALLOC_CHECK_=2 >> > - MALLOC_PERTURB_=165 >> > - export MALLOC_CHECK_ >> > - export MALLOC_PERTURB_ >> > + MALLOC_PERTURB_=165; export MALLOC_PERTURB_ >> > + >> > + # Before glibc 2.11, the feature enabled by MALLOC_CHECK_ was not >> > + # thread-safe. See >> > https://bugzilla.redhat.com/show_bug.cgi?id=585674 and >> > + # in particular the patch attached there, which was applied to glibc >> > CVS as >> > + # "Restore locking in free_check." between 1.11 and 1.11.1. >> > + vswitchd=$abs_top_builddir/vswitchd/ovs-vswitchd >> > + glibc=`ldd $vswitchd | sed -n 's/^ libc\.[^ ]* => \([^ ]*\) .*/\1/p'` >> > + glibc_version=`$glibc | sed -n '1s/.*version >> > \([0-9]\{1,\}\.[0-9]\{1,\}\).*/\1/p'` >> Does the above 2 lines work properly? >> I get a blank line when I run the following on Ubuntu12.04: >> ldd vswitchd/ovs-vswitchd | sed -n 's/^ libc\.[^ ]* => \([^ ]*\) .*/\1/p' > > The character after ^ is a tab, not a space, does that make it work > for you? > > If not, what does the output of ldd look like on Ubuntu? _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev