Teuthology can run a designated daemon with valgrind and preserve the report for analysis. The notcmalloc flavor is preferred to silence valgrind errors unrelated to Ceph itself.
- install: project: ceph branch: wip-5510 flavor: notcmalloc
A daemon running with valgrind is much slower and warnings will show in the logs that should be marked as non relevant in this context:
log-whitelist:
- slow request
- clocks
- wrongly marked me down
- objects unfound and apparently lost
The first osd is marked to be run with valgrind:
- ceph:
valgrind:
osd.0: --tool=memcheck
After running teuthology with
./virtualenv/bin/teuthology -v --archive /tmp/wip-5510-valgrind \ --owner loic@dachary.org \ ~/private/ceph/targets.yaml \ ~/private/ceph/wip-5510-valgrind.yaml
errors may show
DEBUG:teuthology.run_tasks:Exception was not quenched, exiting: Exception: saw valgrind issues
INFO:teuthology.run:Summary data:
{duration: 344.2433888912201, failure_reason: saw valgrind issues, flavor: notcmalloc,
owner: loic@dachary.org, success: false}
INFO:teuthology.run:FAIL
And the valgrind XML report containing the details about the error can be retrieved from the /tmp/wip-5510-valgrind/remote/ubuntu@target1/log/valgrind/osd.0.log.gz
The complete teuthology file:
roles:
- - mon.a
- osd.0
- - osd.1
- client.0
tasks:
- install:
project: ceph
branch: wip-5510
flavor: notcmalloc
- ceph:
valgrind:
osd.0: --tool=memcheck
log-whitelist:
- slow request
- clocks
- wrongly marked me down
- objects unfound and apparently lost
- rados:
clients: [client.0]
objects: 500
op_weights:
delete: 10
read: 45
write: 45
rollback: 50
snap_create: 50
snap_remove: 50
ops: 40

