Hi,
We use valgrind in our automated testing of Ceph. There is a false
positive[1] in the boost library we link with, and we use a
suppression file to silence it (along with other things). However,
when we run our tests across both CentOS7 and Ubuntu Trusty servers,
the suppression is only working on CentOS, and not on Ubuntu.
The suppression file we use is:
https://github.com/ceph/teuthology/blob/master/teuthology/task/valgrind.supp#L303
The error we're trying to suppress is shown in this ticket:
http://tracker.ceph.com/issues/15356
Any advice would be much appreciated, I don't really know how to drill
into this to work out why our suppression isn't working.
Thanks,
John
1. https://svn.boost.org/trac/boost/ticket/3296
On Wed, Aug 3, 2016 at 12:15 PM, Julian Seward <js...@ac...> wrote:
>
>> The suppression file we use is:
>> https://github.com/ceph/teuthology/blob/master/teuthology/task/valgrind.supp#L303
>
> That has demangled symbol names in it. They should be non-demangled,
> and that's why it doesn't match. The easiest way to get the non-demangled
> names is to run with --gen-suppressions=all and copy what you get from
> there. Or you can play games trying to correlate the output of "nm" and
> "nm | c++filt" for the binary, and try to figure out the names from that.
>
> You can see mangled names in other parts of the same file, for example at
> https://github.com/ceph/teuthology/blob/master/teuthology/task/valgrind.supp#L142
Ah, that makes sense, thanks. I guess we could also use creatively
wildcarded strings like *boost*detail*get_once_per_thread_epoch*?
John
From: Julian S. <js...@ac...> - 2016-08-03 11:42:42
On 03/08/16 13:31, John Spray wrote:
> Ah, that makes sense, thanks. I guess we could also use creatively
> wildcarded strings like *boost*detail*get_once_per_thread_epoch*?
Yes, that might also work.
J