Commit Graph

25 Commits

Author SHA1 Message Date
Mark Kogan
03616b4330 valgrind: UninitCondition under __run_exit_handlers suppression
reqiered in CentOS / RHEL 9 & Ubuntu 22.04.1 LTS

Fixes: https://tracker.ceph.com/issues/62141

Signed-off-by: Mark Kogan <mkogan@redhat.com>
2023-09-21 16:55:30 +03:00
Casey Bodley
063721da35 valgrind: update suppression for SyscallParam under call_init
centos9 has a slightly different call stack here

Fixes: https://tracker.ceph.com/issues/62059

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-07-24 10:16:18 -04:00
Casey Bodley
d6d9986315 valgrind: remove stale openssl suppressions
years ago in commit fe97a00099, the
signature of authenticated_decrypt_update_final() changed and this
suppression no longer matches its mangled form:

-  fun:_ZN4ceph6crypto6onwire25AES128GCM_OnWireRxHandler34authenticated_decrypt_update_finalEONS_6buffer7v*4listEj
+  fun:_ZN4ceph6crypto6onwire25AES128GCM_OnWireRxHandler34authenticated_decrypt_update_finalERNS_6buffer7v15_2_04listE

the fact that we didn't notice must mean that we don't need the
suppressions anymore

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-07-20 11:10:04 -04:00
Casey Bodley
ef61386862 valgrind: suppress uninitialized value in OpenSSL
Fixes: https://tracker.ceph.com/issues/61566

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-07-20 09:22:55 -04:00
Casey Bodley
522251642e qa: suppress SyscallParam error during startup on jammy
Fixes: https://tracker.ceph.com/issues/61428

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2023-06-12 16:25:56 -04:00
luo rixin
75adc57feb qa: remove leveldb support from qa
qa/suites: remove leveldb log setting
qa/rebuild_mondb: replace leveldb to rocksdb
qa/valgrind: remove leveldb from valgrind.supp

Signed-off-by: luo rixin <luorixin@huawei.com>
2023-05-04 10:43:08 +08:00
Laura Flores
7d6390dfbd qa: suppress memory leak in rocksdb
Fixes: https://tracker.ceph.com/issues/58925
Signed-off-by: Laura Flores <lflores@redhat.com>
2023-03-06 21:59:49 +00:00
Neha Ojha
707af78f9d
Merge pull request #49006 from yanghonggang/yhg-upgrade-rocksdb-7.7.3
rocksdb: Upgrade rocksdb to latest facebook's v7.9.2

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Mark Nelson <mnelson@redhat.com>
2023-02-28 15:50:21 -08:00
Radoslaw Zarzynski
d90d81585b qa/valgrind.supp: suppress the ColumnFamily ctor called on init
```
    <frame>
      <ip>0x1712F1E</ip>
      <obj>/home/rzarzynski/ceph3/build/bin/ceph-mon</obj>
      <fn>rocksdb::BytewiseComparator()</fn>
      <dir>/home/rzarzynski/ceph3/src/rocksdb/util</dir>
      <file>comparator.cc</file>
      <line>304</line>
    </frame>
    <frame>
      <ip>0x162361C</ip>
      <obj>/home/rzarzynski/ceph3/build/bin/ceph-mon</obj>
      <fn>rocksdb::ColumnFamilyOptions::ColumnFamilyOptions()</fn>
      <dir>/home/rzarzynski/ceph3/src/rocksdb/options</dir>
      <file>options.cc</file>
      <line>123</line>
    </frame>
    <frame>
      <ip>0x12CA21E</ip>
      <obj>/home/rzarzynski/ceph3/build/bin/ceph-mon</obj>
      <fn>Options</fn>
      <dir>/home/rzarzynski/ceph3/build/../src/rocksdb/include/rocksdb</dir>
      <file>options.h</file>
      <line>1409</line>
    </frame>
    <frame>
      <ip>0x12CA21E</ip>
      <obj>/home/rzarzynski/ceph3/build/bin/ceph-mon</obj>
      <fn>RocksDBStore::init(std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;)</fn>
      <dir>/home/rzarzynski/ceph3/build/../src/kv</dir>
      <file>RocksDBStore.cc</file>
      <line>400</line>
    </frame>
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2023-02-28 20:58:27 +00:00
Radoslaw Zarzynski
0de4d99c72 qa/valgrind.supp: suppress the get-or-create CacheItemHelper
```
// Get an CacheItemHelper pointer for value type T and role R.
template <typename T, CacheEntryRole R>
Cache::CacheItemHelper* GetCacheItemHelperForRole() {
  static Cache::CacheItemHelper cache_helper(
      BlocklikeTraits<T>::SizeCallback, BlocklikeTraits<T>::SaveToCallback,
      GetCacheEntryDeleterForRole<T, R>());
  return &cache_helper;
}
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2023-02-28 20:43:48 +00:00
Radoslaw Zarzynski
9949151620 qa/valgrind.supp: even broader suppression for rocksdb's init
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2023-02-28 20:43:41 +00:00
Radoslaw Zarzynski
a3aa624db4 qa/valgrind.supp: ingore rocksdb leak in option parsing
This suppression is needed since upgrading to v7.9.2.
See PR https://github.com/ceph/ceph/pull/49006.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2023-02-28 19:13:39 +00:00
NitzanMordhai
43c94e14a5 src/valgrind.supp: Adding know leaks unrelated to ceph
During teuthology test we can hit few valgrind errors that stop
the tests, one of them is Rocksdb version info and the other one
is dl-init.
Adding them to the valgrinf suppression file.

Fixes: https://tracker.ceph.com/issues/52136
       https://tracker.ceph.com/issues/57751
       https://tracker.ceph.com/issues/53575
Signed-off-by: Nitzan Mordechai <nmordec@redhat.com>
2022-10-27 11:42:19 +00:00
Casey Bodley
bf087c3f84 valgrind: suppress operator delete[] for tcmalloc
suppresses a mismatched operator delete[] from the librados client's
destructor:

<error>
  <unique>0xeef7eb</unique>
  <tid>1</tid>
  <kind>MismatchedFree</kind>
  <what>Mismatched free() / delete / delete []</what>
  <stack>
    <frame>
      <ip>0x4C32EA0</ip>
      <obj>/usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so</obj>
      <fn>operator delete[](void*, unsigned long)</fn>
      <dir>/builddir/build/BUILD/valgrind-3.16.0/coregrind/m_replacemalloc</dir>
      <file>vg_replace_malloc.c</file>
      <line>660</line>
    </frame>
    <frame>
      <ip>0x5FBEB86</ip>
      <obj>/usr/lib64/librados.so.2.0.0</obj>
    </frame>
    <frame>
      <ip>0x5FBEF2C</ip>
      <obj>/usr/lib64/librados.so.2.0.0</obj>
    </frame>
    <frame>
      <ip>0x5F7F7C5</ip>
      <obj>/usr/lib64/librados.so.2.0.0</obj>
      <fn>librados::v14_2_0::Rados::shutdown()</fn>
    </frame>

Fixes: https://tracker.ceph.com/issues/49501

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2021-03-02 15:38:41 -05:00
Sage Weil
28fe149ea2 qa/valgrind.supp: suppress free[] warnings
This is apparently not going to get fixed any time soon.

https://github.com/gperftools/gperftools/issues/792

Signed-off-by: Sage Weil <sage@newdream.net>
2021-02-18 12:04:16 -06:00
Casey Bodley
db17daf3b0 valgrind: update suppression for _dl_allocate_tls
in the rgw suite, there's an extra allocate_dtv() call in this stack.
add a ... to match it

  <stack>
    <frame>
      <ip>0x4C3321A</ip>
      <obj>/usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so</obj>
      <fn>calloc</fn>
      <dir>/builddir/build/BUILD/valgrind-3.16.0/coregrind/m_replacemalloc</dir>
      <file>vg_replace_malloc.c</file>
      <line>760</line>
    </frame>
    <frame>
      <ip>0x4012341</ip>
      <obj>/usr/lib64/ld-2.28.so</obj>
      <fn>allocate_dtv</fn>
    </frame>
    <frame>
      <ip>0x4012CD1</ip>
      <obj>/usr/lib64/ld-2.28.so</obj>
      <fn>_dl_allocate_tls</fn>
    </frame>
    <frame>
      <ip>0x101C7F32</ip>
      <obj>/usr/lib64/libpthread-2.28.so</obj>
      <fn>pthread_create@@GLIBC_2.2.5</fn>
    </frame>
    <frame>
      <ip>0x6F14E64</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.2</obj>
      <fn>Thread::try_create(unsigned long)</fn>
    </frame>

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2021-01-20 11:03:21 -05:00
Kefu Chai
188af3651a qa/valgrind.supp: less specific when suppressing issues/22052
Fixes: https://tracker.ceph.com/issues/22052
Signed-off-by: Kefu Chai <kchai@redhat.com>
2020-05-25 00:02:46 +08:00
Radoslaw Zarzynski
1a6d716df8 qa/valgrind.supp: abstract from ceph::buffer's symbol versioning.
Analysis: https://tracker.ceph.com/issues/44430#note-1
Fixes: https://tracker.ceph.com/issues/44430
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2020-03-05 19:02:36 +01:00
Jason Dillaman
ca6bfd1914 qa/valgrind.supp: drop boost::lockfree::queue suppression
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-06-28 10:56:16 -04:00
Sage Weil
f019fc094e qa/valgrind.supp: be slightly less specific on suppression
I am seeing this trace, which matches except for the
'fun:_ZN15AsyncConnection7processEv' frame.

<error>
  <unique>0x2399</unique>
  <tid>11</tid>
  <threadname>msgr-worker-1</threadname>
  <kind>UninitCondition</kind>
  <what>Conditional jump or move depends on uninitialised value(s)</what>
  <stack>
    <frame>
      <ip>0x5366B18</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>ceph::crypto::onwire::AES128GCM_OnWireRxHandler::authenticated_decrypt_update_final(ceph::buffer::v14_2_0::list&amp;&amp;, unsigned int)</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>crypto_onwire.cc</file>
      <line>274</line>
    </frame>
    <frame>
      <ip>0x5355E60</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>ProtocolV2::handle_read_frame_epilogue_main(std::unique_ptr&lt;ceph::buffer::v14_2_0::ptr_node, ceph::buffer::v14_2_0::ptr_node::disposer&gt;&amp;&amp;, int)</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>ProtocolV2.cc</file>
      <line>1311</line>
    </frame>
    <frame>
      <ip>0x533E2A3</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>ProtocolV2::run_continuation(Ct&lt;ProtocolV2&gt;&amp;)</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>ProtocolV2.cc</file>
      <line>45</line>
    </frame>
    <frame>
      <ip>0x534FB1C</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>ProtocolV2::reuse_connection(boost::intrusive_ptr&lt;AsyncConnection&gt; const&amp;, ProtocolV2*)::{lambda(ConnectedSocket&amp;)#3}::operator()(ConnectedSocket&amp;)::{lambda()#2}::operator()()</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>ProtocolV2.cc</file>
      <line>2739</line>
    </frame>
    <frame>
      <ip>0x534FF57</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>ProtocolV2::reuse_connection(boost::intrusive_ptr&lt;AsyncConnection&gt; const&amp;, ProtocolV2*)::{lambda(ConnectedSocket&amp;)#3}::operator()(ConnectedSocket&amp;)</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>ProtocolV2.cc</file>
      <line>2745</line>
    </frame>
    <frame>
      <ip>0x535001E</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>__invoke_impl&lt;void, ProtocolV2::reuse_connection(const AsyncConnectionRef&amp;, ProtocolV2*)::&lt;lambda(ConnectedSocket&amp;)&gt;&amp;, ConnectedSocket&amp;&gt;</fn>
      <dir>/opt/rh/devtoolset-8/root/usr/include/c++/8/bits</dir>
      <file>invoke.h</file>
      <line>60</line>
    </frame>
    <frame>
      <ip>0x535001E</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>__invoke&lt;ProtocolV2::reuse_connection(const AsyncConnectionRef&amp;, ProtocolV2*)::&lt;lambda(ConnectedSocket&amp;)&gt;&amp;, ConnectedSocket&amp;&gt;</fn>
      <dir>/opt/rh/devtoolset-8/root/usr/include/c++/8/bits</dir>
      <file>invoke.h</file>
      <line>95</line>
    </frame>
    <frame>
      <ip>0x535001E</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>__call&lt;void, 0&gt;</fn>
      <dir>/opt/rh/devtoolset-8/root/usr/include/c++/8</dir>
      <file>functional</file>
      <line>400</line>
    </frame>
    <frame>
      <ip>0x535001E</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>operator()&lt;&gt;</fn>
      <dir>/opt/rh/devtoolset-8/root/usr/include/c++/8</dir>
      <file>functional</file>
      <line>484</line>
    </frame>
    <frame>
      <ip>0x535001E</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>EventCenter::C_submit_event&lt;std::_Bind&lt;ProtocolV2::reuse_connection(boost::intrusive_ptr&lt;AsyncConnection&gt; const&amp;, ProtocolV2*)::{lambda(ConnectedSocket&amp;)#3} (ConnectedSocket)&gt; &gt;::do_request(unsigned long)</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>Event.h</file>
      <line>227</line>
    </frame>
    <frame>
      <ip>0x535FCD6</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>EventCenter::process_events(unsigned int, std::chrono::duration&lt;unsigned long, std::ratio&lt;1l, 1000000000l&gt; &gt;*)</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>Event.cc</file>
      <line>441</line>
    </frame>
    <frame>
      <ip>0x5365086</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>operator()</fn>
      <dir>/usr/src/debug/ceph-15.0.0-1717-g8d72af7/src/msg/async</dir>
      <file>Stack.cc</file>
      <line>53</line>
    </frame>
    <frame>
      <ip>0x5365086</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>std::_Function_handler&lt;void (), NetworkStack::add_thread(unsigned int)::{lambda()#1}&gt;::_M_invoke(std::_Any_data const&amp;)</fn>
      <dir>/opt/rh/devtoolset-8/root/usr/include/c++/8/bits</dir>
      <file>std_function.h</file>
      <line>297</line>
    </frame>
    <frame>
      <ip>0x55F519E</ip>
      <obj>/usr/lib64/ceph/libceph-common.so.0</obj>
      <fn>execute_native_thread_routine</fn>
    </frame>
    <frame>
      <ip>0x1076BDD4</ip>
      <obj>/usr/lib64/libpthread-2.17.so</obj>
      <fn>start_thread</fn>
    </frame>
    <frame>
      <ip>0x118E0EAC</ip>
      <obj>/usr/lib64/libc-2.17.so</obj>
      <fn>clone</fn>
    </frame>
  </stack>
</error>

Signed-off-by: Sage Weil <sage@redhat.com>
2019-06-12 10:33:16 -05:00
Radoslaw Zarzynski
af63e3f51f qa/valgrind.supp: fix the name for aes-128-gcm whiterules.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-05-29 23:39:16 +02:00
Radoslaw Zarzynski
b71ded7b44 qa/valgrind.supp: generalize the whiterule for aes-128-gcm.
Fixes: http://tracker.ceph.com/issues/38827
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-05-29 23:10:52 +02:00
Jason Dillaman
ade792ee03 qa/valgrind.supp: added false-positive in boost::queue::lockfree
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2019-05-02 12:59:57 -04:00
Radoslaw Zarzynski
35274eba7a valgrind.supp: add clauses for uninitialised gcm.Xi in OpenSSL.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-03-29 10:57:50 +01:00
Radoslaw Zarzynski
d10ab9ebfd src/valgrind.supp: replace with the teuthology's whitelist.
This change drops src/valgrind.supp file and transplates
the current teuthology's whitelist into qa/valgrind.supp.

This commit has sibiling in the teuthology repo dropping
the file there.

The rationale behind the entire change is duplication of these
files between two repos, their inconsistencies and confusion.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2019-03-29 10:57:50 +01:00