[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Running tests with Valgrind [was: MAC OSX stack trace, please, for commit-tests.py 59]

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Fri, 17 Jul 2009 15:30:43 +0100

Philip Martin wrote:
> Philip Martin <philip_at_codematters.co.uk> writes:
> > Stefan Sperling <stsp_at_elego.de> writes:
> >> can you run the same for merge_test 56 (or show me how you run svn
> >> tests in valgrind)?
> >
> > The way I do it is to manually edit the subversion/svn/svn libtool
> > script after the build:
> >
> > - exec "$progdir/$program" ${1+"$@"}
> > + exec valgrind -q "$progdir/$program" ${1+"$@"}
> >
> > Then you run the regression tests as normal.

Thanks, Philip! That was really easy and will be very helpful.

> You probably need to enable apr's pool debugging to get the most out
> of valgrind. Configure Subversion with CFLAGS=-DAPR_POOL_DEBUG, maybe

Done that.

> build apr and apr-util with --enable-pool-debug as well.

Haven't done that. It looks like Valgrind is being useful without it.

On many or all repository-contacting executions of "svn" now, I get one
Valgrind warning:
$ svn st -u notes/
==17537== Syscall param epoll_ctl(event) points to uninitialised byte(s)
==17537== at 0x47794EE: epoll_ctl (in /lib/libc-2.4.so)
==17537== by 0x4276411: pollset_add (in /home/julianfoad/lib/libserf-0.so.0.0.0)
==17537== by 0x42752CA: update_pollset (in /home/julianfoad/lib/libserf-0.so.0.0.0)
==17537== by 0x42763AB: check_dirty_pollsets (in /home/julianfoad/lib/libserf-0.so.0.0.0)
==17537== by 0x42765EA: serf_context_prerun (in /home/julianfoad/lib/libserf-0.so.0.0.0)
==17537== by 0x42766B7: serf_context_run (in /home/julianfoad/lib/libserf-0.so.0.0.0)
==17537== by 0x4263041: svn_ra_serf__context_run_wait (util.c:545)
==17537== by 0x4254B28: svn_ra_serf__exchange_capabilities (options.c:476)
==17537== by 0x425A502: svn_ra_serf__open (serf.c:447)
==17537== by 0x4115098: svn_ra_open3 (ra_loader.c:485)
==17537== by 0x4079AFE: svn_client__open_ra_session_internal (ra.c:336)
==17537== by 0x4080BA2: svn_client_status5 (status.c:311)
==17537== Address 0xbeb0c268 is on thread 1's stack

I don't know if that's a Serf issue or if it has been fixed. I'm using
Serf 0.3.0.

- Julian

Received on 2009-07-17 16:32:03 CEST

This is an archived mail posted to the Subversion Dev mailing list.